:root {
  --font-family: "Lora", sans-serif;
  --font-size-base: 16.8px;
  --line-height-base: 1.77;

  --max-w: 1520px;
  --space-x: 1.81rem;
  --space-y: 1.5rem;
  --gap: 1.28rem;
  --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: 1.03rem;
  --radius-lg: 0.8rem;
  --radius-md: 0.48rem;
  --radius-sm: 0.27rem;

  --shadow-sm: 0 2px 8px rgba(0,0,0,0.13);
  --shadow-md: 0 8px 22px rgba(0,0,0,0.16);
  --shadow-lg: 0 20px 36px rgba(0,0,0,0.2);

  --overlay: rgba(0,0,0,0.4);
  --anim-duration: 320ms;
  --anim-ease: cubic-bezier(0.16,1,0.3,1);
  --random-number: 2;

  --brand: #2E7D32;
  --brand-contrast: #FFFFFF;
  --accent: #FF6F00;
  --accent-contrast: #FFFFFF;

  --neutral-0: #FFFFFF;
  --neutral-100: #F5F5F5;
  --neutral-300: #BDBDBD;
  --neutral-600: #757575;
  --neutral-800: #424242;
  --neutral-900: #212121;

  --page-bg: #FAFAF8;
  --page-fg: #212121;
  --muted-bg: #F5F5F5;
  --muted-fg: #616161;
  --card-bg: #FFFFFF;
  --card-fg: #212121;
  --card-border: #E0E0E0;
  --inverse-bg: #1B5E20;
  --inverse-fg: #FFFFFF;
  --primary-bg: #2E7D32;
  --primary-fg: #FFFFFF;
  --primary-hover: #1B5E20;
  --accent-bg: #FF6F00;
  --accent-fg: #FFFFFF;
  --accent-hover: #E65100;
  --gradient-hero-bg: linear-gradient(135deg, #2E7D32 0%, #81C784 100%);
  --gradient-hero-fg: #FFFFFF;
  --gradient-accent-bg: linear-gradient(135deg, #FF6F00 0%, #FFB300 100%);
  --gradient-accent-fg: #FFFFFF;

  --ring: #2E7D32;

  --link: #2E7D32;
  --link-hover: #FF6F00;

  --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;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-y) var(--space-x);
  gap: var(--gap);
}

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

.main-nav {
  display: flex;
}

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

.nav-list a {
  text-decoration: none;
  color: var(--page-fg);
  font-size: var(--font-size-md);
  transition: color var(--anim-duration) var(--anim-ease);
}

.nav-list a:hover {
  color: var(--link-hover);
}

.cta-area {
  display: flex;
  align-items: center;
}

.cta-button {
  display: inline-block;
  padding: 0.5rem 1.5rem;
  background-color: var(--primary-bg);
  color: var(--primary-fg);
  border-radius: var(--radius-md);
  text-decoration: none;
  font-size: var(--font-size-md);
  font-weight: 600;
  transition: background-color var(--anim-duration) var(--anim-ease);
}

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

.burger {
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 2.5rem;
  height: 2.5rem;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0.25rem;
  gap: 0.3rem;
}

.burger-line {
  display: block;
  width: 1.5rem;
  height: 0.15rem;
  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.active .burger-line:nth-child(1) {
  transform: translateY(0.45rem) rotate(45deg);
}

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

.burger.active .burger-line:nth-child(3) {
  transform: translateY(-0.45rem) rotate(-45deg);
}

@media (max-width: 767px) {
  .header-wrapper {
    flex-wrap: wrap;
  }

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

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

  .nav-list {
    flex-direction: column;
    gap: var(--gap);
    padding: var(--space-y) 0;
  }

  .nav-list a {
    display: block;
    padding: 0.5rem 0;
  }

  .burger {
    display: flex;
  }

  .cta-area {
    margin-left: auto;
    margin-right: 0.5rem;
  }
}

footer {
  background-color: var(--muted-bg, #f5f5f0);
  color: var(--page-fg, #2c2c2c);
  font-family: var(--font-family, 'Georgia', serif);
  font-size: var(--font-size-base, 1rem);
  line-height: var(--line-height-base, 1.6);
  padding: var(--space-section-y, 3rem) var(--space-section-x, 1.5rem);
}

.footer-container {
  max-width: var(--max-w, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: var(--gap, 2rem);
}

.footer-newsletter {
  background-color: var(--card-bg, #ffffff);
  padding: var(--space-block, 2rem);
  border-radius: var(--radius-lg, 12px);
  box-shadow: var(--shadow-sm, 0 2px 8px rgba(0,0,0,0.05));
  text-align: center;
}

.footer-newsletter h3 {
  font-size: var(--font-size-h3, 1.5rem);
  margin-bottom: 0.5rem;
  color: var(--primary-bg, #4a6741);
}

.footer-newsletter p {
  margin-bottom: 1rem;
  color: var(--muted-fg, #6b6b6b);
}

.newsletter-form {
  display: flex;
  gap: 0.5rem;
  justify-content: center;
  flex-wrap: wrap;
}

.newsletter-form input {
  padding: 0.75rem 1rem;
  border: 1px solid var(--card-border, #d4d4d4);
  border-radius: var(--radius-md, 8px);
  font-size: var(--font-size-sm, 0.9rem);
  background-color: var(--page-bg, #ffffff);
  color: var(--page-fg, #2c2c2c);
  flex: 1 1 200px;
  max-width: 300px;
}

.newsletter-form input::placeholder {
  color: var(--input-placeholder, #999);
}

.newsletter-form button {
  padding: 0.75rem 1.5rem;
  background-color: var(--primary-bg, #4a6741);
  color: var(--primary-fg, #ffffff);
  border: none;
  border-radius: var(--radius-md, 8px);
  font-size: var(--font-size-sm, 0.9rem);
  cursor: pointer;
  transition: background-color var(--anim-duration, 0.3s) var(--anim-ease, ease);
}

.newsletter-form button:hover {
  background-color: var(--primary-hover, #3d5a35);
}

.footer-main {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--gap, 2rem);
}

@media (min-width: 768px) {
  .footer-main {
    grid-template-columns: 1fr 1fr 1fr;
    align-items: start;
  }
}

.footer-brand {
  text-align: center;
}

@media (min-width: 768px) {
  .footer-brand {
    text-align: left;
  }
}

.footer-logo {
  font-size: var(--font-size-h2, 2rem);
  font-weight: bold;
  color: var(--primary-bg, #4a6741);
  text-decoration: none;
  display: inline-block;
  margin-bottom: 0.5rem;
}

.footer-tagline {
  color: var(--muted-fg, #6b6b6b);
  font-size: var(--font-size-sm, 0.9rem);
}

.footer-nav ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  align-items: center;
}

@media (min-width: 768px) {
  .footer-nav ul {
    align-items: flex-start;
  }
}

.footer-nav a {
  color: var(--link, #4a6741);
  text-decoration: none;
  font-size: var(--font-size-base, 1rem);
  transition: color var(--anim-duration, 0.3s) var(--anim-ease, ease);
}

.footer-nav a:hover {
  color: var(--link-hover, #3d5a35);
  text-decoration: underline;
}

.footer-contacts {
  text-align: center;
}

@media (min-width: 768px) {
  .footer-contacts {
    text-align: left;
  }
}

.footer-contacts h4 {
  font-size: var(--font-size-md, 1.1rem);
  margin-bottom: 0.75rem;
  color: var(--primary-bg, #4a6741);
}

.footer-contacts p {
  margin: 0.25rem 0;
  color: var(--muted-fg, #6b6b6b);
}

.footer-contacts a {
  color: var(--link, #4a6741);
  text-decoration: none;
}

.footer-contacts a:hover {
  text-decoration: underline;
}

.footer-legal {
  grid-column: 1 / -1;
  display: flex;
  gap: 1.5rem;
  justify-content: center;
  flex-wrap: wrap;
  padding-top: 1rem;
  border-top: 1px solid var(--card-border, #d4d4d4);
}

.footer-legal a {
  color: var(--muted-fg, #6b6b6b);
  text-decoration: none;
  font-size: var(--font-size-sm, 0.9rem);
  transition: color var(--anim-duration, 0.3s) var(--anim-ease, ease);
}

.footer-legal a:hover {
  color: var(--link-hover, #3d5a35);
  text-decoration: underline;
}

.footer-disclaimer {
  background-color: var(--card-bg, #ffffff);
  padding: var(--space-block, 1.5rem);
  border-radius: var(--radius-md, 8px);
  box-shadow: var(--shadow-sm, 0 2px 8px rgba(0,0,0,0.05));
  text-align: center;
}

.footer-disclaimer p {
  font-size: var(--font-size-sm, 0.85rem);
  color: var(--muted-fg, #6b6b6b);
  margin:;}

.cookies{position:fixed;right:var(--space-x);bottom:var(--space-y);width:min(420px,calc(100vw - (var(--space-x) * 2)));z-index:1200;}

    .cookies .body{border:1px solid var(--card-border);border-radius:var(--radius-md);background:var(--muted-bg);color:var(--muted-fg);padding:12px;box-shadow:var(--shadow-sm);}

    .cookies .body p{margin:0;}

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

    .cookies .actions button{border:1px solid var(--card-border);border-radius:var(--radius-sm);background:var(--card-bg);color:var(--card-fg);padding:7px 10px;cursor:pointer;}

    .cookies .actions button[data-choice='accept']{background:var(--primary-bg);border-color:var(--primary-bg);color:var(--primary-fg);}

.welcome_-bright{padding:var(--space-section-y) var(--space-section-x);background:var(--gradient-accent-bg);color:var(--gradient-accent-fg)}
.welcome_-bright .wrap{max-width:var(--max-w);margin:0 auto;display:flex;flex-wrap:wrap;gap:var(--space-block);align-items:center}
.welcome_-bright .wrap>*{min-width:0;flex:1 1 12rem}
.welcome_-bright .image{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg)}
.welcome_-bright h1{margin:0;font-size:var(--font-size-h1);line-height:1}
.welcome_-bright p{max-width:48rem;margin:var(--space-y) 0 0;font-size:var(--font-size-lg);line-height:var(--line-height-base)}
.welcome_-bright .links{display:flex;flex-wrap:wrap;gap:var(--space-card);margin-top:var(--space-block)}
.welcome_-bright .links>*{min-width:0;flex:1 1 10rem}
.welcome_-bright a{border-radius:var(--radius-sm);background:var(--accent-bg);color:var(--accent-fg);padding:var(--space-card) var(--space-y);text-decoration:none}
.welcome_-bright a+a{background:transparent;color:inherit;border:1px solid currentColor}
@media(max-width:760px){.welcome_-bright .wrap{display:block}.welcome_-bright .copy{margin-top:var(--space-block)}}

.active-merits {
  background: #f7f7f7;
  color: #0a0f1a;
  padding: var(--space-section-y) var(--space-section-x);
}
.active-merits .wrap {
  width: min(100%, var(--max-w));
  margin: 0 auto;
}
.active-merits h2,
.active-merits h3,
.active-merits p { margin: 0; }
.active-merits .intro {
  display:flex;flex-wrap:wrap;

  gap: var(--gap);
  align-items: end;
  margin-bottom: var(--space-block);
}
.active-merits .photo {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--radius-xl);
}
.active-merits h2 {
  font-size: var(--font-size-h2);
  line-height: 1.06;
}
.active-merits .intro p,
.active-merits .item p {
  color: #475569;
  line-height: var(--line-height-base);
  margin-top: var(--space-card);
}
.active-merits .rail {
  display:flex;flex-wrap:wrap;

  gap: var(--space-card);
}
.active-merits .item {
  padding: var(--space-y);
  border-radius: var(--radius-xl);
  background: #fff;
  box-shadow: var(--shadow-sm);
}
.active-merits .item:nth-child(3n + 2) { margin-top: var(--space-y); }
.active-merits h3 {
  font-size: var(--font-size-h3);
  line-height: 1.14;
}
@media (max-width: 820px) {
  .active-merits .item:nth-child(3n + 2) { margin-top: 0; }
}
.active-merits .intro>*{min-width:0;flex:1 1 18rem}
.active-merits .rail>*{min-width:0;flex:1 1 16rem}

.focus__route{padding:clamp(3.3rem,7vw,6rem) var(--space-x);background:var(--gradient-hero-bg);color:var(--gradient-hero-fg);}

    .focus__route .wrap{max-width:var(--max-w);margin:0 auto;}

    .focus__route .mast{display:flex;justify-content:space-between;align-items:end;gap:1rem;flex-wrap:wrap;margin-bottom:1.1rem;}

    .focus__route .mast p{margin:0;color:color-mix(in srgb, currentColor 82%, transparent);}

    .focus__route .mast h2{margin:.55rem 0 0;font-size:clamp(2rem,4vw,3rem);}

    .focus__route .mast a{display:inline-flex;min-height:2.85rem;align-items:center;justify-content:center;padding:0 1rem;border-radius:var(--radius-md);text-decoration:none;background:var(--accent-bg);color:var(--accent-fg);}

    .focus__route .list{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:var(--gap);}

    .focus__route .list article{padding:1rem;border-radius:var(--radius-lg);background:color-mix(in srgb, currentColor 12%, transparent);border:1px solid color-mix(in srgb, currentColor 20%, transparent);}

    .focus__route .list i{font-style:normal;display:inline-flex;width:2.3rem;height:2.3rem;align-items:center;justify-content:center;border-radius:50%;background:color-mix(in srgb, currentColor 16%, transparent);}

    .focus__route .list h3{margin:.8rem 0 .35rem;font-size:1.04rem;}

    .focus__route .list p{margin:0;color:color-mix(in srgb, currentColor 82%, transparent);}

    .focus__route .list a{display:inline-block;margin-top:.75rem;text-decoration:none;font-weight:600;}

    /* macro-bg:next-c-1__wrap */
    .focus__route{overflow:hidden;}

    .focus__route .wrap{background-image:linear-gradient(color-mix(in srgb, var(--inverse-bg) 88%, transparent), color-mix(in srgb, var(--inverse-bg) 88%, transparent)), url('https://images.pexels.com/photos/235922/pexels-photo-235922.jpeg?auto=compress&cs=tinysrgb&w=800');background-repeat:no-repeat;background-size:cover;background-position:center;border-radius:var(--radius-xl);overflow:hidden;padding:var(--space-y);}

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

.brand_testimonials .wrap {
  max-width: min(var(--max-w), 62rem);
  margin: 0 auto;
}

.brand_testimonials .intro {
  max-width: 48rem;
  margin-bottom: var(--space-block);
}

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

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

.brand_testimonials .notes {
  display: flex;
  flex-direction: column;
  gap: calc(var(--space-card) * 1.2);
}

.brand_testimonials .note {
  padding: 0 0 calc(var(--space-card) * 1.2);
  border-bottom: 1px solid var(--neutral-800);
}

.brand_testimonials .note:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.brand_testimonials .note p {
  margin: 0;
  font-size: var(--font-size-h3);
  line-height: 1.25;
}

.brand_testimonials .byline {
  margin-top: var(--space-card);
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-card);
  align-items: baseline;
}

.brand_testimonials .byline span {
  font-weight: 700;
}

.brand_testimonials .byline small {
  font-size: var(--font-size-sm);
  color: var(--neutral-600);
}

@media (max-width: 560px) {
  .brand_testimonials .note p {
    font-size: var(--font-size-lg);
  }
}

.guidance___shortlist {
  background: var(--gradient-accent-bg);
  color: var(--gradient-accent-fg);
  padding: var(--space-section-y) var(--space-section-x);
}
.guidance___shortlist .wrap {
  width: min(100%, var(--max-w));
  margin: 0 auto;
}
.guidance___shortlist h2,
.guidance___shortlist p { margin: 0; }
.guidance___shortlist .intro {
  display: flex;
  gap: var(--gap);
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: var(--space-block);
}
.guidance___shortlist h2 {
  font-size: var(--font-size-h1);
  line-height: 1;
  max-width: 12ch;
}
.guidance___shortlist .intro p {
  max-width: 42rem;
  line-height: var(--line-height-base);
}
.guidance___shortlist .queue {
  display: flex;
  gap: var(--space-card);
  overflow-x: auto;
  padding-bottom: var(--space-card);
  scroll-snap-type: x mandatory;
}
.guidance___shortlist .item {
  flex: 0 0 min(22rem, 82vw);
  scroll-snap-align: start;
  display: flex;
  flex-direction: column;
  gap: var(--space-card);
  padding: var(--space-card);
  border-radius: var(--radius-lg);
  background: var(--accent-bg);
  color: var(--accent-fg);
  text-decoration: none;
}
.guidance___shortlist .thumb {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--radius-md);
}
.guidance___shortlist strong {
  font-size: var(--font-size-h3);
  line-height: 1.14;
}
.guidance___shortlist span {
  color: var(--muted-fg);
  line-height: var(--line-height-base);
}
@media (max-width: 760px) {
  .guidance___shortlist .intro { flex-direction: column; align-items: flex-start; }
}

.who-we-are--compact{padding:clamp(52px,7vw,92px) clamp(16px,4vw,36px);background:var(--muted-bg);color:var(--muted-fg);}

    .who-we-are--compact .wrap{max-width:var(--max-w);margin:0 auto;display:grid;grid-template-columns:.95fr 1.05fr;gap:var(--gap);align-items:start;}

    .who-we-are--compact .media img{width:100%;height:auto;border-radius:var(--radius-lg);border:1px solid var(--card-border);display:block;background:var(--muted-bg);color:var(--muted-fg);}

    .who-we-are--compact .body p{margin:0;}

    .who-we-are--compact .body h2{margin:7px 0;font-size:clamp(28px,4vw,42px);}

    .who-we-are--compact .body h3{margin:0 0 10px;font-size:1rem;}

    .who-we-are--compact .body span{display:block;margin:0 0 8px;}

    .who-we-are--compact .body ul{margin:0;padding-left:18px;display:grid;gap:6px;}

    @media (max-width: 860px){.who-we-are--compact .wrap{grid-template-columns:1fr;}
    }

.story-index {
  background: var(--gradient-hero-bg);
  color: var(--gradient-hero-fg);
  padding: var(--space-section-y) var(--space-section-x);
}
.story-index .wrap {
  width: min(100%, var(--max-w));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, .55fr) minmax(0, 1fr);
  gap: var(--gap);
}
.story-index h2,
.story-index h3,
.story-index p { margin: 0; }
.story-index h2 { font-size: var(--font-size-h1); line-height: 1.02; }
.story-index h3 { font-size: var(--font-size-h3); line-height: 1.16; }
.story-index p { font-size: var(--font-size-md); line-height: var(--line-height-base); }
.story-index .origin {
  min-height: clamp(22rem, 42vw, 34rem);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: var(--space-block);
  padding: var(--space-block);
  border-radius: var(--radius-xl);
  background: var(--gradient-accent-bg);
  color: var(--gradient-accent-fg);
}
.story-index .origin a {
  width: fit-content;
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid currentColor;
}
.story-index .folds {
  display: grid;
  gap: var(--space-card);
}
.story-index [data-block] {
  display: grid;
  grid-template-columns: minmax(4rem, .16fr) minmax(9rem, .34fr) minmax(0, 1fr);
  gap: var(--space-y);
  padding: var(--space-y);
  border-radius: var(--radius-lg);
  background: var(--card-bg);
  color: var(--card-fg);
  border: 1px solid var(--card-border);
  animation: storyFoldIn calc(var(--anim-duration) * 2.3) var(--anim-ease) both;
  animation-delay: var(--delay, 0ms);
}
.story-index [data-block] b,
.story-index .note { color: var(--muted-fg); }
.story-index .note { grid-column: 2; }
@keyframes storyFoldIn {
  from { opacity: .2; transform: translateX(calc(var(--motion-distance) * .16)); }
  to { opacity: 1; transform: translateX(0); }
}
@media (max-width: 900px) {
  .story-index .wrap,
  .story-index [data-block] { grid-template-columns: 1fr; }
  .story-index .origin { min-height: auto; }
  .story-index h2 { font-size: clamp(var(--font-size-h2), 13vw, var(--font-size-h1)); }
  .story-index .note { grid-column: auto; }
}

.intent_track{padding:var(--space-section-y) var(--space-section-x);background:var(--muted-bg);color:var(--muted-fg)}
.intent_track .wrap{max-width:var(--max-w);margin:0 auto;display:flex;gap:var(--space-block)}
.intent_track .intro{flex:0 1 34%;align-self:flex-start}
.intent_track h2{margin:0;font-size:var(--font-size-h2);line-height:1.08}
.intent_track .intro p{margin:var(--space-y) 0 0;line-height:var(--line-height-base)}
.intent_track .folds{flex:1 1 0}
.intent_track details{padding:var(--space-y) 0}
.intent_track summary{cursor:pointer;font-size:var(--font-size-h3)}
.intent_track details p{margin:var(--space-y) 0 var(--space-card);line-height:var(--line-height-base)}
.intent_track details strong{font-size:var(--font-size-sm)}
@media(max-width:720px){.intent_track .wrap{display:block}.intent_track .folds{margin-top:var(--space-block)}}

.portfolio-view-row {
  background: var(--gradient-hero-bg);
  color: var(--gradient-hero-fg);
  padding: var(--space-section-y) var(--space-section-x);
}
.portfolio-view-row .hero-photo {
  display: block;
  width: min(100%, var(--max-w));
  margin: 0 auto var(--space-block);
  aspect-ratio: 21 / 8;
  object-fit: cover;
  border-radius: var(--radius-xl);
}
.portfolio-view-row .wrap {
  width: min(100%, var(--max-w));
  margin: 0 auto;
  display:flex;flex-wrap:wrap;

  gap: var(--gap);
}
.portfolio-view-row h2,
.portfolio-view-row h3,
.portfolio-view-row p { margin: 0; }
.portfolio-view-row h2 {
  font-size: var(--font-size-h1);
  line-height: 1;
}
.portfolio-view-row .copy {
  display:flex;flex-direction:column;
  gap: var(--space-y);
  align-content: start;
}
.portfolio-view-row .copy p {
  color: var(--muted-fg);
  line-height: var(--line-height-base);
}
.portfolio-view-row .flow {
  display: flex;
  gap: var(--space-card);
  overflow-x: auto;
  padding-bottom: var(--space-card);
  scroll-snap-type: x mandatory;
}
.portfolio-view-row .frame {
  flex: 0 0 min(21rem, 78vw);
  scroll-snap-align: start;
}
.portfolio-view-row .photo {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  border-radius: var(--radius-lg);
  margin-bottom: var(--space-card);
}
.portfolio-view-row span {
  display: block;
  color: var(--primary-bg);
  font-size: var(--font-size-sm);
  margin-bottom: calc(var(--space-card) * .4);
}
.portfolio-view-row h3 {
  font-size: var(--font-size-h3);
  line-height: 1.14;
}
@media (max-width: 820px) {
  .portfolio-view-row .hero-photo { aspect-ratio: 16 / 10; }
}
.portfolio-view-row .wrap>*{min-width:0;flex:1 1 18rem}

.fine-print---minimal{padding:var(--space-section-y) var(--space-section-x);background:var(--inverse-bg);color:var(--inverse-fg)}
.fine-print---minimal .letter{width:min(100%,calc(var(--max-w)*.6));margin:0 auto}
.fine-print---minimal h2{margin:0;font-size:var(--font-size-h2);line-height:1.08;text-align:center}
.fine-print---minimal .intro{max-width:38rem;margin:var(--space-y) auto var(--space-block);color:var(--neutral-600);font-size:var(--font-size-lg);line-height:var(--line-height-base);text-align:center}
.fine-print---minimal .passage{margin-top:var(--space-block)}
.fine-print---minimal .passage:nth-child(even){padding-left:calc(var(--gap)*.75)}
.fine-print---minimal .passage:nth-child(odd){padding-right:calc(var(--gap)*.75)}
.fine-print---minimal h3{margin:0;font-size:var(--font-size-h3);line-height:1.18}
.fine-print---minimal .passage p{margin:var(--space-card) 0 0;color:var(--neutral-600);line-height:var(--line-height-base)}
@media(max-width:560px){.fine-print---minimal .passage:nth-child(n){padding:0}}

.gateway---offerings{padding:var(--space-section-y) var(--space-section-x);background:var(--primary-bg);color:var(--primary-fg)}
.gateway---offerings .wrap{max-width:var(--max-w);margin:0 auto}
.gateway---offerings .top{display:flex;align-items:end;justify-content:space-between;gap:var(--gap)}
.gateway---offerings h2{margin:0;font-size:var(--font-size-h1);line-height:1.02}
.gateway---offerings .top a{color:inherit;text-underline-offset:.22em}
.gateway---offerings .intro{max-width:42rem;margin:var(--space-y) 0 var(--space-block);font-size:var(--font-size-lg);line-height:var(--line-height-base)}
.gateway---offerings .flow{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--gap)}
.gateway---offerings [data-cap]{flex:1 1 18rem;max-width:34rem;padding:var(--space-y) 0;border-top:1px solid color-mix(in srgb,currentColor 38%,transparent);order:var(--local-order,0)}
.gateway---offerings h3{margin:0;font-size:var(--font-size-h3)}
.gateway---offerings [data-cap] p{margin:var(--space-card) 0;line-height:var(--line-height-base)}
.gateway---offerings [data-cap] span{font-size:var(--font-size-sm)}
@media(max-width:620px){.gateway---offerings .top{display:block}.gateway---offerings .top a{display:inline-block;margin-top:var(--space-y)}}

.offset___steps{padding:var(--space-section-y) var(--space-section-x);background:var(--inverse-bg);color:var(--inverse-fg)}
.offset___steps .manual{max-width:min(var(--max-w),74rem);margin:0 auto}
.offset___steps .intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(16rem,.45fr);gap:var(--gap);align-items:end;margin-bottom:var(--space-block)}
.offset___steps h2{margin:0;font-size:var(--font-size-h1);line-height:1}
.offset___steps .intro p{margin:0;font-size:var(--font-size-lg);color:var(--neutral-600)}
.offset___steps .pages{counter-reset:item}
.offset___steps .page{padding:var(--gap) 0;display:grid;grid-template-columns:minmax(5rem,.2fr) minmax(12rem,.32fr) minmax(0,1fr);gap:var(--gap);border-top:1px solid var(--card-border)}
.offset___steps .page:last-child{border-bottom:1px solid var(--card-border)}
.offset___steps .page span{font-size:var(--font-size-sm);color:var(--neutral-600)}
.offset___steps h3{margin:0;font-size:var(--font-size-h3);line-height:1.15}
.offset___steps .page p{margin:0;line-height:1.55;color:var(--neutral-600)}
@media (max-width: 760px){.offset___steps .intro,.offset___steps .page{grid-template-columns:1fr}.offset___steps .page{gap:calc(var(--space-card) * .7)}}

.options___path {
  background: var(--gradient-hero-bg);
  color: var(--gradient-hero-fg);
  padding: var(--space-section-y) var(--space-section-x);
}
.options___path .wrap {
  width: min(100%, var(--max-w));
  margin: 0 auto;
  display: grid;
  gap: var(--gap);
}
.options___path h2,
.options___path h3,
.options___path p { margin: 0; }
.options___path h2 { font-size: var(--font-size-h2); line-height: 1.08; }
.options___path h3 { font-size: var(--font-size-h3); line-height: 1.16; }
.options___path p { font-size: var(--font-size-md); line-height: var(--line-height-base); }
.options___path .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);
}
.options___path .packages {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: var(--space-card);
}
.options___path [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: planPackageIn calc(var(--anim-duration) * 2.2) var(--anim-ease) both;
  animation-delay: var(--delay, 0ms);
}
.options___path [data-block]:nth-child(4n + 1) { grid-column: span 5; }
.options___path [data-block] div {
  display: flex;
  justify-content: space-between;
  gap: var(--space-card);
  color: var(--muted-fg);
}
.options___path .hint { color: var(--muted-fg); max-width: 52ch; }
@keyframes planPackageIn {
  from { opacity: .2; transform: scale(.97); }
  to { opacity: 1; transform: scale(1); }
}
@media (max-width: 900px) {
  .options___path .banner,
  .options___path .packages { grid-template-columns: 1fr; }
  .options___path [data-block],
  .options___path [data-block]:nth-child(4n + 1) { grid-column: auto; }
}

.help-center--motion{background-image:linear-gradient(135deg,color-mix(in srgb,currentColor 6%,transparent),transparent 48%);}
.help-center--motion .grid,.help-center--motion .cards,.help-center--motion .list,.help-center--motion .stack{gap:calc(var(--gap,1rem) * 1.08);}
.help-center--motion article:nth-child(even),.help-center--motion .card:nth-child(even),.help-center--motion .item:nth-child(even){transform:translateY(0.35rem);}
.help-center--motion{padding:clamp(48px,6vw,80px) clamp(16px,4vw,36px);background:var(--muted-bg);color:var(--muted-fg);}

    .help-center--motion .wrap{max-width:900px;margin:0 auto;display:grid;gap:12px;grid-template-columns:1fr 1fr;}

    .help-center--motion .wrap article{border:1px solid var(--card-border);border-radius:var(--radius-lg);background:var(--muted-bg);padding:var(--space-y) var(--space-x);box-shadow:var(--shadow-sm);color:var(--muted-fg);}

    .help-center--motion .wrap h3{margin:0 0 7px;}

    .help-center--motion .wrap p{margin:0;}

    @media (max-width: 700px){.help-center--motion .wrap{grid-template-columns:1fr;}
    }

.contact-point___ribbon {
  position: relative;
  overflow: hidden;
  padding: var(--space-section-y) var(--space-section-x);
  background: var(--gradient-hero-bg);
  color: var(--gradient-hero-fg);
}
.contact-point___ribbon::before {
  content: "";
  position: absolute;
  inset: -20%;
  background: linear-gradient(110deg, transparent 34%, color-mix(in srgb, var(--accent-bg) 16%, transparent) 50%, transparent 66%);
  animation: contactSignalDrift calc(var(--anim-duration) * 3200) var(--anim-ease) infinite alternate;
  pointer-events: none;
}
.contact-point___ribbon .wrap {
  position: relative;
  max-width: var(--max-w);
  margin: 0 auto;
}
.contact-point___ribbon .intro {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: var(--gap);
  padding-bottom: var(--space-y);
}
.contact-point___ribbon h2 {
  max-width: 14ch;
  margin: 0;
  font-size: var(--font-size-h1);
  line-height: 1.02;
}
.contact-point___ribbon .intro p {
  max-width: 38rem;
  margin: 0;
  font-size: var(--font-size-lg);
  line-height: var(--line-height-base);
}
.contact-point___ribbon .direct {
  border-top: 1px solid color-mix(in srgb, currentColor 35%, transparent);
  border-bottom: 1px solid color-mix(in srgb, currentColor 35%, transparent);
}
.contact-point___ribbon .direct a {
  display: flex;
  justify-content: space-between;
  gap: var(--gap);
  padding: var(--space-y) 0;
  color: inherit;
  text-decoration: none;
  transition: padding var(--anim-duration) var(--anim-ease);
}
.contact-point___ribbon .direct a + a {
  border-top: 1px solid color-mix(in srgb, currentColor 22%, transparent);
}
.contact-point___ribbon .direct a:hover {
  padding-left: var(--space-card);
}
.contact-point___ribbon .direct span {
  font-size: var(--font-size-sm);
}
.contact-point___ribbon .direct strong {
  max-width: 70%;
  font-size: var(--font-size-h3);
  overflow-wrap: anywhere;
  text-align: right;
}
.contact-point___ribbon .ground {
  display: flex;
  align-items: flex-start;
  gap: var(--gap);
  padding-top: var(--space-y);
}
.contact-point___ribbon .ground > p {
  flex: 1 1 0;
  margin: 0;
  line-height: var(--line-height-base);
}
.contact-point___ribbon .channels {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: var(--space-card);
}
.contact-point___ribbon .channels a {
  color: inherit;
  text-underline-offset: .25em;
}
@keyframes contactSignalDrift {
  from { transform: translateX(-8%); opacity: .45; }
  to { transform: translateX(8%); opacity: .8; }
}
@media (max-width: 720px) {
  .contact-point___ribbon .intro,
  .contact-point___ribbon .ground {
    display: block;
  }
  .contact-point___ribbon .intro p,
  .contact-point___ribbon .ground > p,
  .contact-point___ribbon .channels {
    margin-top: var(--space-y);
  }
  .contact-point___ribbon .direct a {
    display: block;
  }
  .contact-point___ribbon .direct strong {
    display: block;
    max-width: none;
    margin-top: var(--space-card);
    text-align: left;
  }
  .contact-point___ribbon .channels {
    justify-content: flex-start;
  }
}
@media (prefers-reduced-motion: reduce) {
  .contact-point___ribbon::before { animation: none; }
}

.intake__product{padding:var(--space-section-y) var(--space-section-x);background:var(--inverse-bg);color:var(--inverse-fg)}
.intake__product .letter{width:min(100%,calc(var(--max-w)*.58));margin:0 auto}
.intake__product h2{margin:0;font-size:var(--font-size-h2);line-height:1.08}
.intake__product .letter>p{max-width:38rem;margin:var(--space-y) 0 var(--space-block);color:var(--muted-fg);line-height:var(--line-height-base)}
.intake__product form{display:flex;flex-direction:column}
.intake__product label{margin-top:var(--space-y);font-size:var(--font-size-sm)}
.intake__product input,.intake__product textarea{padding:var(--space-card) 0;border:0;border-bottom:1px solid var(--card-border);border-radius:0;background:transparent;color:inherit;font:inherit;outline:none}
.intake__product input:focus,.intake__product textarea:focus{border-color:currentColor}
.intake__product textarea{resize:vertical}
.intake__product button{align-self:flex-start;margin-top:var(--space-block);padding:var(--space-card) var(--space-y);border:1px solid currentColor;border-radius:var(--radius-sm);background:transparent;color:inherit;font:inherit;cursor:pointer}

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;}

.framed---privacy-notes{padding:var(--space-section-y) var(--space-section-x);background:var(--gradient-accent-bg);color:var(--gradient-accent-fg)}
.framed---privacy-notes .terms{max-width:min(var(--max-w),68rem);margin:0 auto}
.framed---privacy-notes h2{margin:0;font-size:var(--font-size-h1);line-height:1.05}
.framed---privacy-notes .summary{margin:var(--space-y) 0 var(--space-block);font-size:var(--font-size-lg)}
.framed---privacy-notes .entry{padding-left:var(--space-card);margin:0 0 var(--gap);border-left:1px solid color-mix(in srgb,currentColor 36%,transparent)}
.framed---privacy-notes .entry:last-child{margin-bottom:0}
.framed---privacy-notes h3{margin:0 0 var(--space-card);font-size:var(--font-size-h3);line-height:1.2}
.framed---privacy-notes .entry p{margin:0}

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;}
.conditions__block {
  padding: var(--space-section-y) var(--space-section-x);
  background: var(--inverse-bg);
  color: var(--inverse-fg);
}

.conditions__block .wrap {
  max-width: min(var(--max-w), 76rem);
  margin: 0 auto;
  display: flex;
  gap: var(--space-block);
  align-items: flex-start;
}

.conditions__block .rail {
  flex: 0 0 min(26rem, 100%);
  padding: var(--space-card);
  background: var(--page-bg);
  color: var(--page-fg);
  border-radius: var(--radius-lg);
}

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

.conditions__block .rail p {
  margin: var(--space-card) 0 0;
  color: var(--muted-fg);
}

.conditions__block .textflow {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  gap: var(--gap);
}

.conditions__block .textflow div {
  max-width: 44rem;
}

.conditions__block h3 {
  margin: 0;
  font-size: var(--font-size-h3);
}

.conditions__block .textflow p {
  margin: calc(var(--space-card) * .65) 0 0;
  color: var(--neutral-300);
}

@media (max-width: 780px) {
  .conditions__block .wrap {
    flex-direction: column;
  }

  .conditions__block .rail {
    flex-basis: auto;
  }
}

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

.track-finish .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);
}

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

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

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

.track-finish .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);
}

.track-finish .row span {
  font-size: var(--font-size-h3);
}

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

.track-finish a {
  color: var(--accent-bg);
  text-decoration: underline;
  text-underline-offset: 2px;
}

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

.fallback-page--missing{position:relative;overflow:hidden;padding:var(--space-section-y) var(--space-section-x);background:var(--gradient-hero-bg);color:var(--gradient-hero-fg)}
.fallback-page--missing:before{content:"";position:absolute;inset:-20%;background:linear-gradient(105deg,transparent 42%,color-mix(in srgb,var(--accent-bg) 14%,transparent) 50%,transparent 58%);animation:nfCross calc(var(--anim-duration)*34) var(--anim-ease) infinite alternate}
.fallback-page--missing .wrap{position:relative;max-width:var(--max-w);margin:0 auto}
.fallback-page--missing h1{max-width:12ch;margin:0;font-size:var(--font-size-h1);line-height:1}
.fallback-page--missing .way{display:flex;justify-content:space-between;align-items:end;gap:var(--gap);margin-top:var(--space-block);padding-top:var(--space-y);border-top:1px solid color-mix(in srgb,currentColor 30%,transparent)}
.fallback-page--missing p{max-width:38rem;margin:0;font-size:var(--font-size-lg);line-height:var(--line-height-base)}
.fallback-page--missing a{color:inherit;font-size:var(--font-size-lg);text-underline-offset:.24em}
@keyframes nfCross{from{transform:translateX(-7%);opacity:.4}to{transform:translateX(7%);opacity:.8}}
@media(max-width:620px){.fallback-page--missing .way{display:block}.fallback-page--missing a{display:inline-block;margin-top:var(--space-y)}}
@media(prefers-reduced-motion:reduce){.fallback-page--missing:before{animation:none}}