* {
  box-sizing: border-box;
}

html {
  font-size: 100%;
}

body {
  margin: 0;
  overscroll-behavior: contain;
  overflow-x: hidden;
  font-family: "IBM Plex Sans", sans-serif;
}

.skiplink-placeholder {
  display: none;
}

.brandmark {
  display: flex;
  align-items: center;
  text-decoration: none;
  flex-shrink: 0;
}

.brandmark-shell {
  background-color: #ffffff;
  border-radius: 42px;
  padding: 8px 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 1px 5px 28px 0 rgba(128, 138, 59, 0.10), 0 0 0 1.5px rgba(128, 138, 59, 0.13);
  min-width: 90px;
  height: 72px;
}

.brandmark-shell img {
  width: 65px;
  height: 65px;
  object-fit: contain;
  display: block;
}

.siteheader {
  position: relative;
  background: linear-gradient(120deg, #f6f8f0 0%, #eaf0e3 55%, #ddebd6 100%);
  border-bottom: 1.5px solid rgba(128, 138, 59, 0.13);
  box-shadow: 1px 5px 28px 0 rgba(128, 138, 59, 0.10);
  z-index: 10;
  overflow: visible;
}

.siteheader-hold {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  min-height: 96px;
}

.headernav {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.headernav a {
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.2;
  color: #3a4010;
  text-decoration: none;
  padding: 8px 16px;
  border-radius: 26px;
  border: 1.5px solid rgba(128, 138, 59, 0.22);
  background: rgba(255, 255, 255, 0.55);
  letter-spacing: 0;
  transition: background 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), border-color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), letter-spacing 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
}

.headernav a:hover {
  background: rgba(128, 138, 59, 0.13);
  border-color: #808A3B;
  color: #4a5518;
  letter-spacing: 0.04em;
}

.headernav a:focus-visible {
  outline: 3px solid #808A3B;
  outline-offset: 2px;
}

.headernav a[aria-current="page"] {
  background: #808A3B;
  color: #ffffff;
  border-color: #808A3B;
}

.headeraccent {
  position: absolute;
  top: 0;
  right: 0;
  width: 280px;
  height: 100%;
  pointer-events: none;
  overflow: hidden;
  border-radius: 0 0 0 42px;
  z-index: 0;
}

.headeraccent-shape {
  position: absolute;
  top: -32px;
  right: -48px;
  width: 220px;
  height: 160px;
  background: linear-gradient(135deg, rgba(124, 187, 130, 0.18) 0%, rgba(128, 138, 59, 0.09) 100%);
  border-radius: 42px;
  transform: rotate(-18deg);
}

.siteheader-hold>* {
  position: relative;
  z-index: 1;
}

.sitefooter {
  background: #2c3010;
  color: #c8d08a;
  font-family: "IBM Plex Sans", sans-serif;
}

.sitefooter-upper {
  max-width: 1140px;
  margin: 0 auto;
  padding: 48px 32px 32px;
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 48px;
  align-items: start;
}

.footerbrand {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.footerbrand-logohold {
  background-color: #ffffff;
  border-radius: 42px;
  padding: 8px 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  box-shadow: 1px 5px 28px 0 rgba(128, 138, 59, 0.12);
  min-width: 90px;
  height: 72px;
}

.footerbrand-logohold img {
  width: 65px;
  height: 65px;
  object-fit: contain;
  display: block;
}

.footerbrand-name {
  font-size: 20px;
  font-weight: 700;
  color: #e5ebe4;
  line-height: 1.2;
  letter-spacing: 0;
}

.footerbrand-tagline {
  font-size: 14px;
  font-weight: 300;
  color: #a8b870;
  line-height: 1.55;
}

.footernav-mount {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
}

.footernavgroup {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.footernavgroup-label {
  font-size: 14px;
  font-weight: 700;
  color: #e5ebe4;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  line-height: 1.2;
  margin-bottom: 8px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(128, 138, 59, 0.28);
}

.footernavgroup a {
  font-size: 14px;
  font-weight: 400;
  color: #a8b870;
  text-decoration: none;
  line-height: 1.55;
  letter-spacing: 0;
  transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), letter-spacing 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
  display: inline-block;
}

.footernavgroup a:hover {
  color: #e5ebe4;
  letter-spacing: 0.03em;
}

.footernavgroup a:focus-visible {
  outline: 3px solid #808A3B;
  outline-offset: 2px;
  border-radius: 2px;
}

.footercontact-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #a8b870;
  line-height: 1.55;
}

.footercontact-item i {
  color: #7CBB82;
  font-size: 16px;
  flex-shrink: 0;
}

.footercontact-item a {
  color: #a8b870;
  text-decoration: none;
  transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.footercontact-item a:hover {
  color: #e5ebe4;
}

.sitefooter-lower {
  border-top: 1px solid rgba(128, 138, 59, 0.2);
  max-width: 1140px;
  margin: 0 auto;
  padding: 16px 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

.footercopyright {
  font-size: 14px;
  color: #6a7a30;
  line-height: 1.55;
  font-weight: 300;
}

.footerlegal {
  display: flex;
  gap: 16px;
  align-items: center;
}

.footerlegal a {
  font-size: 14px;
  color: #6a7a30;
  text-decoration: none;
  transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
  line-height: 1.55;
}

.footerlegal a:hover {
  color: #c8d08a;
}

.footerlegal a:focus-visible {
  outline: 3px solid #808A3B;
  outline-offset: 2px;
  border-radius: 2px;
}

.cookiepopup {
  position: fixed;
  bottom: 32px;
  left: 32px;
  z-index: 1000;
  background: #ffffff;
  border-radius: 14px;
  box-shadow: 1px 10px 60px 0 rgba(128, 138, 59, 0.12), 1px 5px 28px 0 rgba(128, 138, 59, 0.10);
  border: 1.5px solid rgba(128, 138, 59, 0.18);
  padding: 32px;
  max-width: 320px;
  width: calc(100vw - 64px);
  display: none;
}

.cookiepopup-headline {
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 700;
  color: #2c3010;
  line-height: 1.2;
  margin-bottom: 8px;
}

.cookiepopup-desc {
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 14px;
  font-weight: 400;
  color: #4a5518;
  line-height: 1.55;
  margin-bottom: 16px;
}

.cookiepopup-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.cookiepopup-actions button {
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.2;
  border-radius: 7px;
  padding: 8px 16px;
  min-height: 44px;
  cursor: pointer;
  border: 1.5px solid #808A3B;
  background: transparent;
  color: #3a4010;
  transition: background 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
  flex: 1;
}

.cookiepopup-actions button:hover {
  background: #808A3B;
  color: #ffffff;
}

.cookiepopup-actions button:active {
  box-shadow: inset 1px 1px 3px 0 rgba(128, 138, 59, 0.3);
}

.cookiepopup-actions button:focus-visible {
  outline: 3px solid #808A3B;
  outline-offset: 2px;
}

.prefbtn {
  position: fixed;
  bottom: 32px;
  left: 32px;
  z-index: 999;
  width: 44px;
  height: 44px;
  border-radius: 26px;
  background: #808A3B;
  border: none;
  cursor: pointer;
  display: none;
  align-items: center;
  justify-content: center;
  box-shadow: 1px 5px 28px 0 rgba(128, 138, 59, 0.18);
  transition: background 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.prefbtn:hover {
  background: #4a5518;
}

.prefbtn:focus-visible {
  outline: 3px solid #808A3B;
  outline-offset: 2px;
}

.prefbtn i {
  color: #ffffff;
  font-size: 20px;
}

.policy-content {
  max-width: 1140px;
  margin: 0 auto;
  padding: 48px 32px;
  color: #2a2e1a;
}

.policy-content p {
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 16px;
  color: #2a2e1a;
}

.policy-content ul,
.policy-content ol {
  margin: 16px 0 16px 32px;
  padding: 0;
}

.policy-content ul {
  list-style: none;
  margin-left: 0;
}

.policy-content ul li {
  padding-left: 16px;
  position: relative;
}

.policy-content ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 11px;
  width: 6px;
  height: 6px;
  border-radius: 2px;
  background-color: #808A3B;
}

.policy-content ol {
  list-style: decimal;
}

.policy-content ol li::marker {
  color: #808A3B;
  font-weight: 600;
}

.policy-content li {
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 8px;
  color: #2a2e1a;
}

.policy-content ul ul,
.policy-content ol ol,
.policy-content ul ol,
.policy-content ol ul {
  margin-top: 8px;
  margin-bottom: 8px;
  margin-left: 32px;
}

.policy-content strong,
.policy-content b {
  font-weight: 700;
  color: #1e2210;
}

.policy-content em,
.policy-content i {
  font-style: italic;
  color: #4a5220;
}

.policy-content hr {
  border: none;
  border-top: 1px solid #E5EBE4;
  margin: 48px 0;
  box-shadow: 1px 1px 3px 0 rgba(128, 138, 59, 0.06);
}

@media (max-width: 768px) {
  .policy-content {
    padding: 32px 16px;
  }

  .policy-content p,
  .policy-content li {
    font-size: 14px;
  }

  .policy-content ul,
  .policy-content ol {
    margin-left: 16px;
  }
}

.srvdet {
  background: #fff;
  overflow-x: clip;
}

.srvdet .topband {
  background: linear-gradient(100deg, #808A3B 0%, #7CBB82 60%, #E5EBE4 100%);
  padding: 48px 0 0 0;
  position: relative;
}

.srvdet .topband::after {
  content: '';
  display: block;
  height: 32px;
  background: #fff;
  clip-path: ellipse(55% 100% at 50% 100%);
}

.srvdet .topband-inner {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 32px 48px 32px;
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  gap: 48px;
}

.srvdet .topband-text {
  flex: 1 1 0;
  min-width: 0;
}

.srvdet .catrow {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
}

.srvdet .cattag {
  display: inline-block;
  background: rgba(255, 255, 255, 0.18);
  color: #fff;
  font-size: 14px;
  line-height: 1.2;
  padding: 4px 16px;
  border-radius: 26px;
  border: 1px solid rgba(255, 255, 255, 0.35);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.srvdet .userfmt {
  display: inline-block;
  background: rgba(128, 138, 59, 0.22);
  color: #fff;
  font-size: 14px;
  line-height: 1.2;
  padding: 4px 16px;
  border-radius: 7px;
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.srvdet .maintitle {
  font-size: 50px;
  line-height: 1.2;
  color: #fff;
  margin: 0 0 16px 0;
  font-weight: 700;
}

.srvdet .metarow {
  display: flex;
  flex-direction: row;
  gap: 16px;
  flex-wrap: wrap;
  align-items: center;
}

.srvdet .metaitem {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 4px;
  color: rgba(255, 255, 255, 0.88);
  font-size: 14px;
  line-height: 1.55;
}

.srvdet .metaitem i {
  font-size: 16px;
}

.srvdet .topband-img {
  flex: 0 0 340px;
  width: 340px;
  aspect-ratio: 1/1;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 1px 10px 60px 0 rgba(128, 138, 59, 0.12);
  position: relative;
}

.srvdet .topband-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: saturate(1);
  transition: filter 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.srvdet .topband-img:hover img {
  filter: saturate(0);
}

.srvdet .topband-img .imgoverlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(128, 138, 59, 0.38) 0%, transparent 70%);
  pointer-events: none;
  border-radius: 14px;
}

.srvdet .edgeaccent {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: rgba(255, 255, 255, 0.45);
  border-radius: 2px;
}

.srvdet .bodywrap {
  max-width: 1140px;
  margin: 0 auto;
  padding: 48px 32px;
  display: flex;
  flex-direction: row;
  gap: 48px;
  align-items: flex-start;
}

.srvdet .bodymain {
  flex: 1 1 0;
  min-width: 0;
}

.srvdet .bodyaside {
  flex: 0 0 300px;
  width: 300px;
}

.srvdet .secanchor {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
}

.srvdet .secanchor span {
  display: block;
  width: 18px;
  height: 18px;
  background: #808A3B;
  border-radius: 2px;
  flex-shrink: 0;
}

.srvdet .seclabel {
  font-size: 14px;
  line-height: 1.2;
  color: #808A3B;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 600;
}

.srvdet .desctitle {
  font-size: 26px;
  line-height: 1.2;
  color: #232a10;
  margin: 0 0 16px 0;
  font-weight: 700;
}

.srvdet .descbody {
  color: #3a3f1e;
  font-size: 16px;
  line-height: 1.8;
}

.srvdet .descbody p {
  margin: 0 0 16px 0;
}

.srvdet .descbody h2 {
  font-size: 20px;
  line-height: 1.2;
  color: #232a10;
  margin: 32px 0 8px 0;
}

.srvdet .descbody h3 {
  font-size: 16px;
  line-height: 1.55;
  color: #3a3f1e;
  margin: 16px 0 8px 0;
  font-weight: 700;
}

.srvdet .descbody strong {
  color: #232a10;
}

.srvdet .descbody ol {
  padding-left: 32px;
  margin: 0 0 16px 0;
}

.srvdet .descbody li {
  margin-bottom: 8px;
  color: #3a3f1e;
}

.srvdet .descbody dl {
  margin: 0 0 16px 0;
}

.srvdet .descbody dt {
  font-weight: 700;
  color: #232a10;
  margin-top: 8px;
}

.srvdet .descbody dd {
  margin-left: 16px;
  color: #3a3f1e;
}

.srvdet .descbody details {
  border: 1px solid #E5EBE4;
  border-radius: 7px;
  padding: 8px 16px;
  margin-bottom: 8px;
}

.srvdet .descbody summary {
  cursor: pointer;
  font-weight: 600;
  color: #808A3B;
}

.srvdet .progblock {
  margin-top: 48px;
  background: #E5EBE4;
  border-radius: 14px;
  padding: 32px;
}

.srvdet .progtitle {
  font-size: 20px;
  line-height: 1.2;
  color: #232a10;
  margin: 0 0 16px 0;
  font-weight: 700;
}

.srvdet .progbody {
  color: #3a3f1e;
  font-size: 16px;
  line-height: 1.8;
}

.srvdet .progbody p {
  margin: 0 0 16px 0;
}

.srvdet .progbody h2 {
  font-size: 20px;
  line-height: 1.2;
  color: #232a10;
  margin: 24px 0 8px 0;
}

.srvdet .progbody ol {
  padding-left: 32px;
  margin: 0 0 16px 0;
}

.srvdet .progbody li {
  margin-bottom: 8px;
}

.srvdet .progbody mark {
  background: rgba(124, 187, 130, 0.28);
  color: #232a10;
  border-radius: 2px;
  padding: 0 4px;
}

.srvdet .progbody blockquote {
  border-top: 2px solid #808A3B;
  margin: 16px 0;
  padding: 16px 0 0 0;
  color: #808A3B;
  font-size: 16px;
  line-height: 1.55;
}

.srvdet .progbody figure {
  margin: 16px 0;
}

.srvdet .progbody figcaption {
  font-size: 14px;
  color: #6a7030;
  margin-top: 4px;
}

.srvdet .pricebox {
  background: #fff;
  border: 1px solid #E5EBE4;
  border-radius: 14px;
  padding: 32px;
  box-shadow: 1px 5px 28px 0 rgba(124, 187, 130, 0.10);
  position: sticky;
  top: 32px;
}

.srvdet .pricetop {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 8px;
}

.srvdet .pricelabel {
  font-size: 14px;
  line-height: 1.2;
  color: #808A3B;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  font-weight: 600;
}

.srvdet .likeblock {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 4px;
  color: #808A3B;
  font-size: 14px;
  line-height: 1.2;
}

.srvdet .likeblock i {
  font-size: 16px;
}

.srvdet .pricenum {
  font-size: 36px;
  line-height: 1.2;
  color: #232a10;
  font-weight: 700;
  margin: 8px 0 4px 0;
}

.srvdet .pricedes {
  font-size: 14px;
  color: #5a6030;
  line-height: 1.55;
  margin-bottom: 16px;
}

.srvdet .pricenote {
  font-size: 14px;
  color: #808A3B;
  line-height: 1.55;
  border-top: 1px solid #E5EBE4;
  padding-top: 16px;
  margin-bottom: 16px;
}

.srvdet .infolist {
  list-style: none;
  padding: 0;
  margin: 0 0 24px 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.srvdet .infolist li {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #3a3f1e;
  line-height: 1.55;
}

.srvdet .infolist li i {
  color: #808A3B;
  font-size: 16px;
  flex-shrink: 0;
}

.srvdet .enrollbtn {
  display: block;
  width: 100%;
  background: transparent;
  color: #808A3B;
  border: 2px solid #808A3B;
  border-radius: 7px;
  padding: 16px;
  font-size: 16px;
  line-height: 1.2;
  font-weight: 700;
  cursor: pointer;
  letter-spacing: 0.01em;
  transition: background 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), letter-spacing 0.22s cubic-bezier(0.68, -0.55, 0.27, 1.55);
  text-align: center;
}

.srvdet .enrollbtn:hover {
  background: #808A3B;
  color: #fff;
  letter-spacing: 0.06em;
}

.srvdet .enrollbtn:active {
  box-shadow: inset 1px 1px 3px 0 rgba(128, 138, 59, 0.22);
}

.srvdet .enrollbtn:focus-visible {
  outline: 2px solid #808A3B;
  outline-offset: 2px;
}

.srvdet .seatsrow {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
  font-size: 14px;
  color: #808A3B;
  line-height: 1.2;
}

.srvdet .seatsrow i {
  font-size: 16px;
}

.srvdet .interactrow {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 32px 96px 32px;
  display: flex;
  flex-direction: row;
  gap: 32px;
  flex-wrap: wrap;
}

.srvdet .pollblock {
  flex: 1 1 320px;
  background: #fff;
  border: 1px solid #E5EBE4;
  border-radius: 14px;
  padding: 32px;
  box-shadow: 1px 1px 3px 0 rgba(128, 138, 59, 0.06);
}

.srvdet .pollblock h4 {
  font-size: 20px;
  line-height: 1.2;
  color: #232a10;
  margin: 0 0 16px 0;
  font-weight: 700;
}

.srvdet .pollopt {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

.srvdet .pollopt input[type="radio"] {
  appearance: none;
  -webkit-appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid #808A3B;
  border-radius: 42px;
  flex-shrink: 0;
  cursor: pointer;
  transition: background 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.srvdet .pollopt input[type="radio"]:checked {
  background: #808A3B;
  box-shadow: inset 1px 1px 3px 0 rgba(128, 138, 59, 0.22);
}

.srvdet .pollopt label {
  font-size: 16px;
  color: #3a3f1e;
  line-height: 1.55;
  cursor: pointer;
}

.srvdet .pollopt input[type="radio"]:checked+label {
  color: #808A3B;
  font-weight: 700;
}

.srvdet .reacblock {
  flex: 1 1 320px;
  background: #E5EBE4;
  border-radius: 14px;
  padding: 32px;
}

.srvdet .reacblock h4 {
  font-size: 20px;
  line-height: 1.2;
  color: #232a10;
  margin: 0 0 16px 0;
  font-weight: 700;
}

.srvdet .reacrow {
  display: flex;
  flex-direction: row;
  gap: 16px;
  flex-wrap: wrap;
}

.srvdet .reacitem {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}

.srvdet .reacitem input[type="radio"] {
  display: none;
}

.srvdet .reacitem label {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  cursor: pointer;
  padding: 8px 16px;
  border-radius: 26px;
  border: 2px solid transparent;
  background: #fff;
  font-size: 14px;
  color: #5a6030;
  line-height: 1.2;
  transition: border-color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), background 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), letter-spacing 0.2s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

.srvdet .reacitem label:hover {
  letter-spacing: 0.04em;
  border-color: #7CBB82;
}

.srvdet .reacitem input[type="radio"]:checked+label {
  border-color: #808A3B;
  background: rgba(128, 138, 59, 0.10);
  color: #808A3B;
  font-weight: 700;
  box-shadow: inset 1px 1px 3px 0 rgba(128, 138, 59, 0.12);
}

.srvdet .reacicon {
  width: 28px;
  height: 28px;
  display: block;
}

@media (max-width: 860px) {
  .srvdet .topband-inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 32px;
  }

  .srvdet .topband-img {
    flex: 0 0 auto;
    width: 100%;
    max-width: 340px;
  }

  .srvdet .bodywrap {
    flex-direction: column;
  }

  .srvdet .bodyaside {
    flex: 0 0 auto;
    width: 100%;
  }

  .srvdet .pricebox {
    position: static;
  }

  .srvdet .maintitle {
    font-size: 36px;
  }
}

@media (max-width: 540px) {
  .srvdet .maintitle {
    font-size: 26px;
  }

  .srvdet .topband-inner {
    padding: 0 16px 32px 16px;
  }

  .srvdet .bodywrap {
    padding: 32px 16px;
  }

  .srvdet .interactrow {
    padding: 0 16px 48px 16px;
  }
}

.wbns {
  background: #fff;
  overflow-x: clip;
}

.wbns script {
  display: none;
}

.wbns .titstrip {
  max-width: 1140px;
  margin: 0 auto;
  padding: 96px 32px 96px 32px;
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: 48px;
  position: relative;
}

.wbns .titstrip::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");
  background-repeat: repeat;
  background-size: 200px 200px;
  pointer-events: none;
  border-radius: 14px;
  z-index: 0;
}

.wbns .titstrip>* {
  position: relative;
  z-index: 1;
}

.wbns .imgstrip {
  width: 220px;
  flex-shrink: 0;
  border-radius: 14px;
  overflow: hidden;
  position: relative;
}

.wbns .imgstrip img {
  width: 220px;
  height: 220px;
  object-fit: cover;
  display: block;
  border-radius: 14px;
}

.wbns .imgstrip::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 60%;
  height: 60%;
  background: radial-gradient(ellipse at 0% 0%, rgba(128, 138, 59, 0.38) 0%, transparent 70%);
  border-radius: 14px 0 0 0;
  pointer-events: none;
}

.wbns .tittext {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 16px;
  justify-content: center;
}

.wbns .tittext .anchor {
  display: flex;
  align-items: center;
  gap: 8px;
}

.wbns .tittext .anchor span {
  display: inline-block;
  width: 18px;
  height: 3px;
  background: #808A3B;
  border-radius: 2px;
}

.wbns .tittext .anchor em {
  font-size: 14px;
  color: #808A3B;
  font-style: normal;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.wbns .tittext h1 {
  font-size: 50px;
  line-height: 1.2;
  color: #1e2106;
  margin: 0;
}

.wbns .tittext .sub {
  font-size: 20px;
  line-height: 1.55;
  color: #3a3f1a;
  margin: 0;
}

.wbns .tittext .theses {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 8px;
}

.wbns .tittext .thesis {
  font-size: 16px;
  line-height: 1.55;
  color: #3a3f1a;
  padding-left: 16px;
  border-left: 2px solid #7CBB82;
  display: block;
}

.wbns .tittext .thesis:focus-visible {
  outline: 2px solid #808A3B;
  outline-offset: 2px;
}

.wbns .titbg {
  background: linear-gradient(to right, #E5EBE4, #fff);
  border-radius: 26px;
  margin: 0 16px;
}

.wbns .detailrow {
  max-width: 1140px;
  margin: 0 auto;
  padding: 96px 32px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: start;
}

.wbns .detailrow .imgcol {
  position: relative;
}

.wbns .detailrow .imgcol img {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
  border-radius: 14px;
  display: block;
  box-shadow: 1px 10px 60px 0 rgba(128, 138, 59, 0.12);
}

.wbns .detailrow .imgcol .badge {
  position: absolute;
  bottom: -16px;
  right: -16px;
  background: #808A3B;
  color: #fff;
  border-radius: 14px;
  padding: 16px;
  font-size: 14px;
  line-height: 1.55;
  max-width: 180px;
  box-shadow: 1px 5px 28px 0 rgba(128, 138, 59, 0.10);
}

.wbns .detailrow .imgcol .badge strong {
  display: block;
  font-size: 20px;
  line-height: 1.2;
  margin-bottom: 4px;
}

.wbns .textcol {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.wbns .textcol .secmark {
  display: flex;
  align-items: center;
  gap: 8px;
}

.wbns .textcol .secmark svg {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

.wbns .textcol h2 {
  font-size: 36px;
  line-height: 1.2;
  color: #1e2106;
  margin: 0;
}

.wbns .textcol p {
  font-size: 16px;
  line-height: 1.8;
  color: #2e3310;
  margin: 0;
}

.wbns .metrics {
  display: flex;
  flex-direction: row;
  gap: 0;
  border: 1px solid #E5EBE4;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 1px 1px 3px 0 rgba(124, 187, 130, 0.06);
}

.wbns .metric {
  flex: 1;
  padding: 16px;
  text-align: center;
  position: relative;
}

.wbns .metric+.metric::before {
  content: '';
  position: absolute;
  left: 0;
  top: 16px;
  bottom: 16px;
  width: 1px;
  background: #E5EBE4;
}

.wbns .metric .mval {
  display: block;
  font-size: 36px;
  line-height: 1.2;
  color: #808A3B;
  font-weight: 700;
}

.wbns .metric .mlabel {
  display: block;
  font-size: 14px;
  line-height: 1.55;
  color: #3a3f1a;
  margin-top: 4px;
}

.wbns .offerlist {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.wbns .offeritem {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 16px;
  padding: 16px;
  border-radius: 14px;
  border: 1px solid #E5EBE4;
  transition: box-shadow 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), border-color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.wbns .offeritem:hover {
  box-shadow: 1px 5px 28px 0 rgba(128, 138, 59, 0.10);
  border-color: #7CBB82;
}

.wbns .offeritem .icobox {
  width: 40px;
  height: 40px;
  border-radius: 7px;
  background: #E5EBE4;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: background 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.wbns .offeritem:hover .icobox {
  background: #808A3B;
}

.wbns .offeritem .icobox i {
  font-size: 20px;
  color: #808A3B;
  transition: color 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.wbns .offeritem:hover .icobox i {
  color: #fff;
}

.wbns .offeritem .oftext h5 {
  font-size: 16px;
  line-height: 1.2;
  color: #1e2106;
  margin: 0 0 4px 0;
  transition: letter-spacing 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.wbns .offeritem:hover .oftext h5 {
  letter-spacing: 0.03em;
}

.wbns .offeritem .oftext p {
  font-size: 14px;
  line-height: 1.55;
  color: #3a3f1a;
  margin: 0;
}

.wbns .ctabtn {
  display: inline-block;
  padding: 16px 32px;
  border: 2px solid #808A3B;
  border-radius: 7px;
  color: #808A3B;
  font-size: 16px;
  line-height: 1.2;
  text-decoration: none;
  background: transparent;
  cursor: pointer;
  transition: background 0.28s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.28s cubic-bezier(0.34, 1.56, 0.64, 1), letter-spacing 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
  align-self: flex-start;
}

.wbns .ctabtn:hover {
  background: #808A3B;
  color: #fff;
  letter-spacing: 0.04em;
}

.wbns .ctabtn:focus-visible {
  outline: 2px solid #808A3B;
  outline-offset: 3px;
}

.wbns .ctabtn:active {
  box-shadow: inset 1px 2px 8px 0 rgba(128, 138, 59, 0.18);
}

.wbns .glowborder {
  animation: borderGlow 2.8s cubic-bezier(0.68, -0.55, 0.27, 1.55) infinite alternate;
}

@keyframes borderGlow {
  0% {
    box-shadow: 0 0 0px 0px rgba(128, 138, 59, 0.0), 1px 1px 3px 0 rgba(128, 138, 59, 0.06);
  }

  100% {
    box-shadow: 0 0 14px 3px rgba(124, 187, 130, 0.22), 1px 5px 28px 0 rgba(128, 138, 59, 0.10);
  }
}

.wbns .divider {
  width: 100%;
  overflow: hidden;
  line-height: 0;
  margin: 0;
}

.wbns .divider svg {
  display: block;
  width: 100%;
}

@media (max-width: 860px) {
  .wbns .titstrip {
    flex-direction: column;
    padding: 48px 16px 48px 16px;
    gap: 32px;
  }

  .wbns .imgstrip {
    width: 100%;
  }

  .wbns .imgstrip img {
    width: 100%;
    height: auto;
    aspect-ratio: 1/1;
  }

  .wbns .tittext h1 {
    font-size: 36px;
  }

  .wbns .titbg {
    margin: 0 8px;
  }

  .wbns .detailrow {
    grid-template-columns: 1fr;
    padding: 48px 16px;
    gap: 32px;
  }

  .wbns .detailrow .imgcol .badge {
    position: static;
    margin-top: 16px;
    max-width: 100%;
  }

  .wbns .metrics {
    flex-direction: column;
  }

  .wbns .metric+.metric::before {
    top: 0;
    left: 16px;
    right: 16px;
    bottom: auto;
    width: auto;
    height: 1px;
  }
}

.stats {
  background: #fff;
  overflow-x: clip;
}

.stats .statpage-schema {
  display: none;
}

.stats .titblock {
  position: relative;
  padding: 96px 48px 96px 48px;
  max-width: 1140px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: center;
}

.stats .titblock-img {
  position: relative;
  border-radius: 26px;
  overflow: hidden;
  aspect-ratio: 1/1;
  width: 100%;
}

.stats .titblock-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: 0.88;
}

.stats .titblock-img::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(128, 138, 59, 0.72) 0%, transparent 60%);
  border-radius: 26px;
}

.stats .titblock-noise {
  position: absolute;
  inset: 0;
  border-radius: 26px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E");
  pointer-events: none;
  z-index: 2;
}

.stats .titblock-text {
  padding: 32px 0 32px 48px;
}

.stats .titblock-eyebrow {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 32px;
}

.stats .eyebrow-shape {
  width: 8px;
  height: 8px;
  background: #808A3B;
  transform: rotate(45deg);
  flex-shrink: 0;
}

.stats .eyebrow-label {
  font-size: 14px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #808A3B;
  font-weight: 600;
}

.stats .titblock-h1 {
  font-size: 50px;
  line-height: 1.2;
  color: #2a2a2a;
  margin: 0 0 32px 0;
  font-weight: 700;
}

.stats .titblock-h1 .grad-word {
  background: linear-gradient(to right, #808A3B, transparent);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.stats .titblock-desc {
  font-size: 16px;
  line-height: 1.8;
  color: #3d3d3d;
  margin: 0 0 32px 0;
  max-width: 420px;
}

.stats .titblock-divider {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 32px;
}

.stats .titblock-divider span {
  display: block;
  width: 32px;
  height: 2px;
  background: #808A3B;
  border-radius: 2px;
}

.stats .titblock-divider i {
  display: block;
  width: 6px;
  height: 6px;
  background: #7CBB82;
  transform: rotate(45deg);
}

.stats .titblock-stat {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.stats .titblock-stat .num {
  font-size: 36px;
  font-weight: 700;
  color: #808A3B;
  line-height: 1.2;
}

.stats .titblock-stat .lbl {
  font-size: 14px;
  color: #555;
  line-height: 1.55;
}

.stats .dots-border {
  position: absolute;
  top: 24px;
  right: -16px;
  width: 80px;
  height: 80px;
  pointer-events: none;
  z-index: 0;
}

.stats .metricsgrid {
  background: #E5EBE4;
  padding: 96px 0 96px 0;
  position: relative;
}

.stats .metricsgrid-inner {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 48px;
}

.stats .metricsgrid-top {
  display: flex;
  align-items: flex-start;
  gap: 96px;
  margin-bottom: 48px;
}

.stats .metricsgrid-heading {
  flex: 1;
}

.stats .mg-shape {
  width: 10px;
  height: 10px;
  background: #7CBB82;
  border-radius: 2px;
  transform: rotate(45deg);
  margin-bottom: 16px;
}

.stats .metricsgrid-h2 {
  font-size: 36px;
  line-height: 1.2;
  color: #1e2200;
  margin: 0 0 16px 0;
  font-weight: 700;
}

.stats .metricsgrid-sub {
  font-size: 16px;
  line-height: 1.8;
  color: #3a3a3a;
  margin: 0;
  max-width: 380px;
}

.stats .metricsgrid-img {
  width: 260px;
  flex-shrink: 0;
  border-radius: 14px;
  overflow: hidden;
  aspect-ratio: 1/1;
  position: relative;
  box-shadow: 1px 5px 28px 0 rgba(128, 138, 59, 0.10);
}

.stats .metricsgrid-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: 0.82;
}

.stats .metricsgrid-img::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(128, 138, 59, 0.38), transparent);
  z-index: 1;
  border-radius: 14px;
}

.stats .cards-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  margin-bottom: 48px;
}

.stats .metcard {
  background: #fff;
  border-radius: 14px;
  padding: 32px;
  box-shadow: 1px 1px 3px 0 rgba(128, 138, 59, 0.06);
  transition: box-shadow 0.28s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
  position: relative;
  animation: shadowbuild 0.7s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

@keyframes shadowbuild {
  from {
    box-shadow: 1px 1px 3px 0 rgba(128, 138, 59, 0);
  }

  to {
    box-shadow: 1px 5px 28px 0 rgba(128, 138, 59, 0.10);
  }
}

.stats .metcard:hover {
  box-shadow: 1px 10px 60px 0 rgba(128, 138, 59, 0.12);
  transform: translateY(-4px);
}

.stats .metcard-icon {
  width: 44px;
  height: 44px;
  background: #E5EBE4;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
}

.stats .metcard-icon i {
  font-size: 20px;
  color: #808A3B;
}

.stats .metcard-num {
  font-size: 50px;
  font-weight: 700;
  color: #808A3B;
  line-height: 1.2;
  margin-bottom: 8px;
}

.stats .metcard-desc {
  font-size: 14px;
  color: #444;
  line-height: 1.55;
}

.stats .metcard-sep {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 16px 0 0 0;
}

.stats .metcard-sep span {
  display: block;
  width: 24px;
  height: 1px;
  background: #808A3B;
  opacity: 0.4;
}

.stats .metcard-sep i {
  width: 5px;
  height: 5px;
  background: #7CBB82;
  transform: rotate(45deg);
  display: block;
}

.stats .imgrow {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 32px;
  align-items: center;
}

.stats .imgrow-img {
  border-radius: 26px;
  overflow: hidden;
  aspect-ratio: 1/1;
  position: relative;
  box-shadow: 1px 5px 28px 0 rgba(124, 187, 130, 0.10);
}

.stats .imgrow-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: 0.78;
}

.stats .imgrow-img::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(128, 138, 59, 0.5), transparent 70%);
  border-radius: 26px;
}

.stats .imgrow-text {
  padding: 16px 0;
}

.stats .imgrow-h3 {
  font-size: 26px;
  line-height: 1.2;
  color: #1e2200;
  margin: 0 0 16px 0;
  font-weight: 600;
}

.stats .imgrow-p {
  font-size: 16px;
  line-height: 1.8;
  color: #3a3a3a;
  margin: 0 0 16px 0;
}

.stats .imgrow-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.stats .tag {
  font-size: 14px;
  color: #808A3B;
  border: 1px solid #808A3B;
  border-radius: 7px;
  padding: 4px 16px;
  background: transparent;
  transition: background 0.22s cubic-bezier(0.68, -0.55, 0.27, 1.55), color 0.22s cubic-bezier(0.68, -0.55, 0.27, 1.55), letter-spacing 0.22s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

.stats .tag:hover {
  background: #808A3B;
  color: #fff;
  letter-spacing: 0.04em;
}

.stats .mg-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  margin: 48px 0 0 0;
}

.stats .mg-divider-line {
  display: block;
  width: 60px;
  height: 1px;
  background: #808A3B;
  opacity: 0.3;
}

.stats .mg-divider-gap {
  width: 32px;
}

@media (max-width: 900px) {
  .stats .titblock {
    grid-template-columns: 1fr;
    padding: 48px 16px;
  }

  .stats .titblock-text {
    padding: 0;
  }

  .stats .titblock-h1 {
    font-size: 36px;
  }

  .stats .metricsgrid-inner {
    padding: 0 16px;
  }

  .stats .metricsgrid-top {
    flex-direction: column;
    gap: 32px;
  }

  .stats .metricsgrid-img {
    width: 100%;
  }

  .stats .cards-row {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .stats .imgrow {
    grid-template-columns: 1fr;
  }
}

.ctus {
  background: #fff;
  overflow-x: clip;
  padding: 0;
}

.ctus .strip {
  background: #E5EBE4;
  padding: 48px 0;
  position: relative;
  overflow: hidden;
}

.ctus .strip::before {
  content: '';
  position: absolute;
  top: -32px;
  right: 80px;
  width: 90px;
  height: 90px;
  background: #808A3B;
  opacity: 0.07;
  transform: rotate(45deg);
  pointer-events: none;
}

.ctus .strip::after {
  content: '';
  position: absolute;
  bottom: -20px;
  left: 40px;
  width: 60px;
  height: 60px;
  background: #7CBB82;
  opacity: 0.10;
  transform: rotate(45deg);
  pointer-events: none;
}

.ctus .stripInner {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 32px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 48px;
}

.ctus .stripVisual {
  flex-shrink: 0;
  width: 140px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  position: relative;
}

.ctus .shapedBox {
  width: 120px;
  height: 120px;
  background: linear-gradient(90deg, #808A3B 0%, #7CBB82 100%);
  clip-path: polygon(20% 0%, 80% 0%, 100% 20%, 100% 80%, 80% 100%, 20% 100%, 0% 80%, 0% 20%);
  display: flex;
  align-items: center;
  justify-content: center;
}

.ctus .shapedBox i {
  color: #fff;
  font-size: 36px;
}

.ctus .liveNum {
  font-size: 14px;
  color: #808A3B;
  letter-spacing: 0.04em;
  text-align: center;
  line-height: 1.55;
}

.ctus .liveNum strong {
  font-size: 26px;
  display: block;
  color: #808A3B;
  line-height: 1.2;
}

.ctus .stripText {
  flex: 1;
}

.ctus .stripText h1 {
  font-size: 36px;
  line-height: 1.2;
  color: #2a2a2a;
  margin: 0 0 16px;
}

.ctus .stripText h1 span {
  color: #808A3B;
}

.ctus .stripText p {
  font-size: 16px;
  line-height: 1.55;
  color: #3d3d3d;
  margin: 0;
  max-width: 560px;
}

.ctus .geoDeco {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: flex-end;
  opacity: 0.18;
}

.ctus .geoDeco span {
  display: block;
  background: #808A3B;
  border-radius: 2px;
}

.ctus .dividerA {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 32px 0 0;
}

.ctus .dividerA span {
  display: block;
  width: 48px;
  height: 2px;
  background: #808A3B;
  opacity: 0.35;
  border-radius: 2px;
}

.ctus .dividerA em {
  display: block;
  width: 8px;
  height: 8px;
  background: #7CBB82;
  transform: rotate(45deg);
  border-radius: 2px;
  font-style: normal;
}

.ctus .formarea {
  padding: 96px 0 48px;
  background: #fff;
}

.ctus .formareaInner {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 32px;
  display: flex;
  flex-direction: row;
  gap: 96px;
  align-items: flex-start;
}

.ctus .formLeft {
  flex: 1;
  min-width: 0;
}

.ctus .formLeft h2 {
  font-size: 26px;
  line-height: 1.2;
  color: #2a2a2a;
  margin: 0 0 8px;
  display: flex;
  align-items: center;
  gap: 12px;
}

.ctus .formLeft h2::before {
  content: '';
  display: inline-block;
  width: 10px;
  height: 10px;
  background: #808A3B;
  transform: rotate(45deg);
  border-radius: 2px;
  flex-shrink: 0;
}

.ctus .formLeft p {
  font-size: 14px;
  line-height: 1.55;
  color: #555;
  margin: 0 0 32px;
}

.ctus .fieldGroup {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.ctus .fieldRow {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.ctus .fieldRow label {
  font-size: 14px;
  color: #3d3d3d;
  line-height: 1.55;
}

.ctus .fieldRow input[type="email"] {
  width: 100%;
  padding: 16px;
  font-size: 16px;
  border: 1.5px solid #c8d0b0;
  border-radius: 7px;
  background: #fff;
  color: #2a2a2a;
  outline: none;
  box-sizing: border-box;
  transition: border-color 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.ctus .fieldRow input[type="email"]::placeholder {
  color: #aaa;
}

.ctus .fieldRow input[type="email"]:focus {
  border-color: #808A3B;
  box-shadow: 1px 5px 28px 0 rgba(128, 138, 59, 0.10);
}

.ctus .fieldRow select {
  width: 100%;
  padding: 16px;
  font-size: 16px;
  border: 1.5px solid #c8d0b0;
  border-radius: 7px;
  background: #fff;
  color: #2a2a2a;
  outline: none;
  box-sizing: border-box;
  appearance: none;
  cursor: pointer;
  transition: border-color 0.28s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.ctus .fieldRow select:focus {
  border-color: #808A3B;
  box-shadow: 1px 5px 28px 0 rgba(128, 138, 59, 0.10);
}

.ctus .selectWrap {
  position: relative;
}

.ctus .selectWrap::after {
  content: '';
  position: absolute;
  right: 18px;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 6px solid #808A3B;
  pointer-events: none;
}

.ctus .privacyRow {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 12px;
  margin-top: 8px;
}

.ctus .privacyRow input[type="checkbox"] {
  margin-top: 3px;
  width: 18px;
  height: 18px;
  accent-color: #808A3B;
  flex-shrink: 0;
  cursor: pointer;
}

.ctus .privacyRow input[type="checkbox"]:checked {
  box-shadow: inset 0 0 0 2px #808A3B;
}

.ctus .privacyRow span {
  font-size: 14px;
  line-height: 1.55;
  color: #555;
}

.ctus .privacyRow a {
  color: #808A3B;
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: letter-spacing 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), text-shadow 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.ctus .privacyRow a:hover {
  letter-spacing: 0.03em;
  text-shadow: 0 1px 4px rgba(128, 138, 59, 0.18);
}

.ctus .submitBtn {
  margin-top: 16px;
  padding: 16px 48px;
  font-size: 16px;
  color: #808A3B;
  background: transparent;
  border: 2px solid #808A3B;
  border-radius: 7px;
  cursor: pointer;
  letter-spacing: 0.01em;
  transition: background 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), letter-spacing 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.ctus .submitBtn:hover {
  background: #808A3B;
  color: #fff;
  letter-spacing: 0.05em;
}

.ctus .submitBtn:active {
  box-shadow: inset 1px 1px 3px 0 rgba(128, 138, 59, 0.18);
}

.ctus .formRight {
  width: 320px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.ctus .contactCard {
  background: #E5EBE4;
  border-radius: 14px;
  padding: 32px;
  box-shadow: 1px 5px 28px 0 rgba(124, 187, 130, 0.10);
  position: relative;
  overflow: hidden;
}

.ctus .contactCard::after {
  content: '';
  position: absolute;
  top: -18px;
  right: -18px;
  width: 52px;
  height: 52px;
  background: #808A3B;
  opacity: 0.10;
  transform: rotate(45deg);
  border-radius: 7px;
  pointer-events: none;
}

.ctus .contactCard h3 {
  font-size: 20px;
  line-height: 1.2;
  color: #2a2a2a;
  margin: 0 0 16px;
  display: flex;
  align-items: center;
  gap: 10px;
}

.ctus .contactCard h3::before {
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  background: #7CBB82;
  transform: rotate(45deg);
  border-radius: 2px;
  flex-shrink: 0;
}

.ctus .contactItem {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 12px;
  padding: 8px 0;
  border-bottom: 1px solid rgba(128, 138, 59, 0.12);
}

.ctus .contactItem:last-child {
  border-bottom: none;
}

.ctus .contactItem i {
  color: #808A3B;
  font-size: 20px;
  flex-shrink: 0;
  margin-top: 2px;
}

.ctus .contactItem p {
  font-size: 14px;
  line-height: 1.55;
  color: #3d3d3d;
  margin: 0;
}

.ctus .contactItem a {
  color: #3d3d3d;
  text-decoration: none;
  transition: letter-spacing 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), text-shadow 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.ctus .contactItem a:hover {
  letter-spacing: 0.03em;
  text-shadow: 0 1px 4px rgba(128, 138, 59, 0.20);
}

.ctus .dividerB {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 16px 0;
}

.ctus .dividerB span {
  display: block;
  width: 32px;
  height: 1px;
  background: #808A3B;
  opacity: 0.30;
}

.ctus .dividerB em {
  display: block;
  width: 6px;
  height: 6px;
  border: 2px solid #7CBB82;
  transform: rotate(45deg);
  border-radius: 2px;
  font-style: normal;
}

.ctus .infoband {
  background: #808A3B;
  padding: 48px 0;
  position: relative;
  overflow: hidden;
}

.ctus .infoband::before {
  content: '';
  position: absolute;
  left: -40px;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  width: 140px;
  height: 140px;
  background: #fff;
  opacity: 0.04;
  border-radius: 14px;
  pointer-events: none;
}

.ctus .infobandInner {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 32px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 48px;
  flex-wrap: wrap;
}

.ctus .infobandItem {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
  flex: 1;
  min-width: 200px;
}

.ctus .infobandIcon {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.12);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.ctus .infobandIcon i {
  color: #E5EBE4;
  font-size: 22px;
}

.ctus .infobandText p {
  margin: 0;
  font-size: 14px;
  line-height: 1.55;
  color: rgba(229, 235, 228, 0.75);
}

.ctus .infobandText strong {
  display: block;
  font-size: 16px;
  color: #fff;
  line-height: 1.2;
  margin-bottom: 4px;
}

.ctus .infobandDivide {
  width: 1px;
  height: 48px;
  background: rgba(255, 255, 255, 0.15);
  flex-shrink: 0;
}

@keyframes fadeUp {
  from {
    opacity: 0;
    transform: translateY(18px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.ctus .stripInner {
  animation: fadeUp 0.28s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

.ctus .formLeft {
  animation: fadeUp 0.30s cubic-bezier(0.34, 1.56, 0.64, 1) 0.08s both;
}

.ctus .formRight {
  animation: fadeUp 0.32s cubic-bezier(0.34, 1.56, 0.64, 1) 0.16s both;
}

.ctus .infoband {
  animation: fadeUp 0.28s cubic-bezier(0.34, 1.56, 0.64, 1) 0.22s both;
}

@media (max-width: 900px) {
  .ctus .stripInner {
    flex-direction: column;
    gap: 32px;
  }

  .ctus .geoDeco {
    display: none;
  }

  .ctus .formareaInner {
    flex-direction: column;
    gap: 48px;
  }

  .ctus .formRight {
    width: 100%;
  }

  .ctus .infobandInner {
    flex-direction: column;
    gap: 32px;
  }

  .ctus .infobandDivide {
    display: none;
  }
}

@media (max-width: 600px) {
  .ctus .stripText h1 {
    font-size: 26px;
  }

  .ctus .formLeft h2 {
    font-size: 20px;
  }
}

.aboutus {
  overflow-x: hidden;
}

.aboutus .titleblock {
  position: relative;
  padding: 96px 48px;
  background: linear-gradient(to right, #808A3B, #7CBB82 60%, #E5EBE4);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.aboutus .titleblock::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(128, 138, 59, 0);
  animation: overlayPulse 6s ease-in-out infinite;
  pointer-events: none;
}

@keyframes overlayPulse {

  0%,
  100% {
    background: rgba(128, 138, 59, 0);
  }

  50% {
    background: rgba(128, 138, 59, 0.07);
  }
}

.aboutus .titleblock .frameLines {
  position: absolute;
  inset: 24px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 14px;
  pointer-events: none;
}

.aboutus .titleblock .frameLines::before {
  content: "";
  position: absolute;
  inset: 8px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 7px;
  pointer-events: none;
}

.aboutus .titleblock .imgwrap {
  width: 320px;
  height: 320px;
  border-radius: 26px;
  overflow: hidden;
  position: relative;
  box-shadow: 1px 10px 60px 0 rgba(128, 138, 59, 0.12);
  flex-shrink: 0;
}

.aboutus .titleblock .imgwrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: blur(0px);
  transition: filter 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.aboutus .titleblock .imgwrap:hover img {
  filter: blur(3px) brightness(0.7);
}

.aboutus .titleblock .imgwrap .imgoverlay {
  position: absolute;
  inset: 0;
  background: rgba(128, 138, 59, 0.82);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
  border-radius: 26px;
}

.aboutus .titleblock .imgwrap:hover .imgoverlay {
  opacity: 1;
}

.aboutus .titleblock .imgoverlay span {
  color: #fff;
  font-size: 16px;
  line-height: 1.55;
  text-align: center;
  padding: 16px;
}

.aboutus .titleblock .titlewrap {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 48px;
  max-width: 1140px;
  width: 100%;
  position: relative;
  z-index: 1;
}

.aboutus .titleblock .titletxt {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.aboutus .titleblock .titletxt h1 {
  font-size: 50px;
  line-height: 1.2;
  color: #fff;
  margin: 0;
  letter-spacing: 0;
}

.aboutus .titleblock .anchor {
  display: inline-block;
  width: 32px;
  height: 4px;
  background: rgba(255, 255, 255, 0.6);
  border-radius: 2px;
  margin-bottom: 8px;
}

.aboutus .splitblock {
  max-width: 1140px;
  margin: 0 auto;
  padding: 96px 48px;
  display: grid;
  grid-template-columns: 30% 70%;
  gap: 48px;
  align-items: start;
  position: relative;
}

.aboutus .splitblock::after {
  content: "";
  position: absolute;
  left: 0;
  top: 96px;
  bottom: 96px;
  width: 4px;
  background: linear-gradient(to bottom, #808A3B, #7CBB82);
  border-radius: 2px;
}

.aboutus .leftaccent {
  display: flex;
  flex-direction: column;
  gap: 32px;
  padding-left: 24px;
}

.aboutus .leftaccent .accentlabel {
  font-size: 14px;
  line-height: 1.55;
  color: #808A3B;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-weight: 600;
}

.aboutus .leftaccent h2 {
  font-size: 36px;
  line-height: 1.2;
  color: #2a2a2a;
  margin: 0;
}

.aboutus .leftaccent .shapemark {
  width: 20px;
  height: 20px;
  background: #7CBB82;
  border-radius: 2px;
  transform: rotate(45deg);
  display: block;
}

.aboutus .statrow {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.aboutus .statitem {
  border-top: 1px solid #E5EBE4;
  padding-top: 16px;
}

.aboutus .statitem .num {
  font-size: 50px;
  line-height: 1.2;
  color: #808A3B;
  font-weight: 700;
  display: block;
}

.aboutus .statitem .numlabel {
  font-size: 14px;
  line-height: 1.55;
  color: #555;
  display: block;
  margin-top: 4px;
}

.aboutus .statitem .numdesc {
  font-size: 14px;
  line-height: 1.8;
  color: #666;
  margin-top: 8px;
}

.aboutus .rightcols {
  display: flex;
  flex-direction: column;
  gap: 48px;
}

.aboutus .threecols {
  display: grid;
  grid-template-columns: 1fr 0.75fr 1fr;
  gap: 16px;
  align-items: end;
}

.aboutus .col {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.aboutus .col.shorter {
  align-self: center;
}

.aboutus .imgcard {
  position: relative;
  border-radius: 14px;
  overflow: hidden;
  aspect-ratio: 1/1;
  box-shadow: 1px 5px 28px 0 rgba(124, 187, 130, 0.10);
}

.aboutus .imgcard img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.aboutus .imgcard:hover img {
  transform: scale(1.04);
}

.aboutus .imgcard .darkov {
  position: absolute;
  inset: 0;
  background: rgba(40, 50, 20, 0);
  display: flex;
  align-items: flex-end;
  padding: 16px;
  transition: background 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
  border-radius: 14px;
}

.aboutus .imgcard:hover .darkov {
  background: rgba(40, 50, 20, 0.72);
}

.aboutus .imgcard .darkov span {
  color: #fff;
  font-size: 14px;
  line-height: 1.55;
  opacity: 0;
  transition: opacity 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.aboutus .imgcard:hover .darkov span {
  opacity: 1;
}

.aboutus .textcard {
  background: #E5EBE4;
  border-radius: 14px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  box-shadow: 1px 1px 3px 0 rgba(128, 138, 59, 0.06);
}

.aboutus .textcard h4 {
  font-size: 20px;
  line-height: 1.2;
  color: #2a2a2a;
  margin: 0;
}

.aboutus .textcard p {
  font-size: 16px;
  line-height: 1.8;
  color: #444;
  margin: 0;
}

.aboutus .textcard .iconrow {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
}

.aboutus .textcard .iconrow i {
  color: #808A3B;
  font-size: 20px;
}

.aboutus .textcard .iconrow a {
  font-size: 14px;
  color: #808A3B;
  text-decoration: none !important;
  transition: letter-spacing 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.aboutus .textcard .iconrow a:hover {
  letter-spacing: 0.04em;
  text-shadow: 0 2px 8px rgba(128, 138, 59, 0.18);
}

.aboutus .infoblock {
  background: #fff;
  border-radius: 26px;
  padding: 32px;
  box-shadow: 1px 5px 28px 0 rgba(128, 138, 59, 0.10);
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.aboutus .infoblock h5 {
  font-size: 16px;
  line-height: 1.55;
  color: #808A3B;
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.aboutus .infoblock p {
  font-size: 16px;
  line-height: 1.8;
  color: #444;
  margin: 0;
}

.aboutus .infoblock a {
  color: #808A3B;
  text-decoration: none !important;
  transition: letter-spacing 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.aboutus .infoblock a:hover {
  letter-spacing: 0.03em;
  text-shadow: 0 1px 6px rgba(128, 138, 59, 0.2);
}

.aboutus .arrowdiv {
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 8px;
  padding: 16px 0;
}

.aboutus .arrowdiv span {
  display: inline-block;
  width: 0;
  height: 0;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 10px solid #7CBB82;
  opacity: 0.5;
}

.aboutus .arrowdiv span:nth-child(2) {
  opacity: 0.35;
}

.aboutus .arrowdiv span:nth-child(3) {
  opacity: 0.2;
}

.aboutus .bgpattern {
  position: relative;
  background: #f5f7f0;
  overflow: hidden;
}

.aboutus .bgpattern::before {
  content: "";
  position: absolute;
  right: -60px;
  top: -60px;
  width: 320px;
  height: 320px;
  border: 40px solid rgba(128, 138, 59, 0.05);
  border-radius: 42px;
  transform: rotate(20deg);
  pointer-events: none;
}

.aboutus .bgpattern::after {
  content: "";
  position: absolute;
  left: 10%;
  bottom: -80px;
  width: 220px;
  height: 220px;
  background: rgba(124, 187, 130, 0.05);
  border-radius: 26px;
  transform: rotate(-12deg);
  pointer-events: none;
}

.aboutus .slidein .col:nth-child(1) {
  animation: slideFromLeft 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

.aboutus .slidein .col:nth-child(2) {
  animation: slideFromBottom 0.28s 0.08s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

.aboutus .slidein .col:nth-child(3) {
  animation: slideFromRight 0.3s 0.15s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

@keyframes slideFromLeft {
  from {
    opacity: 0;
    transform: translateX(-32px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes slideFromRight {
  from {
    opacity: 0;
    transform: translateX(32px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes slideFromBottom {
  from {
    opacity: 0;
    transform: translateY(24px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 900px) {
  .aboutus .titlewrap {
    flex-direction: column;
    gap: 32px;
  }

  .aboutus .titleblock .imgwrap {
    width: 100%;
    max-width: 320px;
  }

  .aboutus .splitblock {
    grid-template-columns: 1fr;
    padding: 48px 16px;
  }

  .aboutus .splitblock::after {
    display: none;
  }

  .aboutus .leftaccent {
    padding-left: 0;
  }

  .aboutus .threecols {
    grid-template-columns: 1fr 1fr;
  }

  .aboutus .titleblock {
    padding: 48px 16px;
  }
}

@media (max-width: 600px) {
  .aboutus .threecols {
    grid-template-columns: 1fr;
  }

  .aboutus .titleblock h1 {
    font-size: 36px;
  }

  .aboutus .leftaccent h2 {
    font-size: 26px;
  }
}

.srvc {
  max-width: 100%;
  overflow-x: hidden;
}

.srvc .pgwrap {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 32px;
}

.srvc .titblock {
  background: #fff;
  padding: 48px 0 32px;
  position: relative;
}

.srvc .titblock .pgwrap {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 48px;
}

.srvc .titblob {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  pointer-events: none;
}

.srvc .titblob span {
  display: block;
  position: absolute;
  border-radius: 42px;
  filter: blur(48px);
  opacity: 0.18;
}

.srvc .titblob span:first-child {
  width: 320px;
  height: 220px;
  background: #808A3B;
  top: -40px;
  left: -60px;
}

.srvc .titblob span:last-child {
  width: 260px;
  height: 180px;
  background: #7CBB82;
  bottom: -30px;
  right: 80px;
}

.srvc .tittext {
  flex: 1 1 0;
  position: relative;
  z-index: 1;
}

.srvc .tittext h1 {
  font-size: 50px;
  line-height: 1.2;
  color: #2a2e14;
  margin: 0 0 16px;
}

.srvc .tittext h1 em {
  font-style: normal;
  position: relative;
  display: inline-block;
}

.srvc .tittext h1 em::after {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 100%;
  height: 3px;
  background: linear-gradient(to right, #808A3B, transparent);
  border-radius: 2px;
}

.srvc .tittext p {
  font-size: 16px;
  line-height: 1.55;
  color: #3d4020;
  margin: 0 0 8px;
  max-width: 520px;
}

.srvc .titnum {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #808A3B;
  font-weight: 600;
  margin-bottom: 16px;
}

.srvc .titnum .numval {
  font-size: 36px;
  line-height: 1.2;
  color: #808A3B;
}

.srvc .titimg {
  flex: 0 0 340px;
  position: relative;
  z-index: 1;
}

.srvc .titimg img {
  width: 340px;
  height: 340px;
  object-fit: cover;
  border-radius: 14px;
  display: block;
  box-shadow: 1px 5px 28px 0 rgba(128, 138, 59, 0.10);
  filter: saturate(0.85) hue-rotate(0deg) brightness(1.05);
}

.srvc .divline {
  border: none;
  border-top: 1px solid #d6dcc5;
  margin: 0;
}

.srvc .cardgrid {
  padding: 48px 0 64px;
  background: #fff;
}

.srvc .cardgrid .pgwrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 32px;
}

.srvc .card {
  border: 1px solid #d6dcc5;
  border-radius: 14px;
  background: #fff;
  display: flex;
  flex-direction: column;
  box-shadow: 1px 1px 3px 0 rgba(128, 138, 59, 0.06);
  transition: box-shadow 0.28s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
  overflow: hidden;
}

.srvc .card:hover {
  box-shadow: 1px 10px 60px 0 rgba(128, 138, 59, 0.12);
  transform: translateY(-4px);
}

.srvc .cardimg {
  width: 100%;
  aspect-ratio: 1/1;
  overflow: hidden;
  position: relative;
  flex-shrink: 0;
}

.srvc .cardimg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: saturate(1);
  transition: filter 0.25s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

.srvc .card:hover .cardimg img {
  filter: saturate(0);
}

.srvc .cardimg .overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(128, 138, 59, 0.18), transparent);
  pointer-events: none;
}

.srvc .cardbody {
  padding: 24px 24px 16px;
  display: flex;
  flex-direction: column;
  flex: 1 1 0;
  gap: 8px;
}

.srvc .cardtags {
  display: flex;
  flex-direction: row;
  gap: 8px;
  flex-wrap: wrap;
}

.srvc .tag {
  font-size: 14px;
  color: #808A3B;
  background: #E5EBE4;
  border-radius: 7px;
  padding: 4px 8px;
  line-height: 1.2;
}

.srvc .userbadge {
  font-size: 14px;
  color: #5a6030;
  background: #fff;
  border: 1px solid #808A3B;
  border-radius: 7px;
  padding: 4px 8px;
  line-height: 1.2;
}

.srvc .cardtitle {
  font-size: 20px;
  line-height: 1.2;
  color: #2a2e14;
  margin: 8px 0 0;
}

.srvc .carddesc {
  font-size: 14px;
  line-height: 1.55;
  color: #3d4020;
  margin: 0;
}

.srvc .cardmeta {
  display: flex;
  flex-direction: row;
  gap: 16px;
  flex-wrap: wrap;
  margin-top: 8px;
}

.srvc .metaitem {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 4px;
  font-size: 14px;
  color: #5a6030;
}

.srvc .metaitem i {
  font-size: 16px;
  color: #808A3B;
}

.srvc .cardprice {
  margin-top: 8px;
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  gap: 8px;
}

.srvc .pricenum {
  font-size: 26px;
  line-height: 1.2;
  color: #2a2e14;
  font-weight: 700;
}

.srvc .pricedes {
  font-size: 14px;
  color: #5a6030;
  line-height: 1.55;
  padding-bottom: 2px;
}

.srvc .pricenote {
  font-size: 14px;
  color: #808A3B;
  line-height: 1.55;
  margin-top: 4px;
}

.srvc .cardseats {
  font-size: 14px;
  color: #7CBB82;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 4px;
  margin-top: 4px;
}

.srvc .cardseats i {
  font-size: 15px;
}

.srvc .cardlikes {
  font-size: 14px;
  color: #808A3B;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 4px;
}

.srvc .cardlikes i {
  font-size: 16px;
}

.srvc .cardfooter {
  padding: 16px 24px 24px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.srvc .btnlink {
  display: inline-block;
  font-size: 14px;
  color: #808A3B;
  border: 1px solid #808A3B;
  border-radius: 7px;
  padding: 8px 16px;
  text-decoration: none;
  letter-spacing: 0;
  transition: background 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), letter-spacing 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.srvc .btnlink:hover {
  background: #808A3B;
  color: #fff;
  letter-spacing: 0.04em;
}

.srvc .btnlink:focus {
  outline: 2px solid #808A3B;
  outline-offset: 2px;
}

.srvc .btnlink:active {
  box-shadow: inset 1px 1px 3px 0 rgba(128, 138, 59, 0.18);
}

.srvc .stepsblock {
  padding: 64px 0 48px;
  background: #E5EBE4;
  position: relative;
}

.srvc .stepsblock::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: #c8d0b0;
}

.srvc .stepsblock .pgwrap {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.srvc .stepshd {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
}

.srvc .stepshd .geo {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

.srvc .stepshd h2 {
  font-size: 36px;
  line-height: 1.2;
  color: #2a2e14;
  margin: 0;
}

.srvc .stepsrow {
  display: flex;
  flex-direction: row;
  gap: 0;
  position: relative;
}

.srvc .stepsrow::after {
  content: '';
  display: block;
  position: absolute;
  top: 28px;
  left: 0;
  right: 0;
  height: 1px;
  border-top: 1px dashed #808A3B;
  pointer-events: none;
  z-index: 0;
}

.srvc .step {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  padding: 0 16px 0 0;
  position: relative;
  z-index: 1;
}

.srvc .step:last-child {
  padding-right: 0;
}

.srvc .stepnum {
  width: 48px;
  height: 48px;
  border-radius: 26px;
  background: #fff;
  border: 2px solid #808A3B;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  font-weight: 700;
  color: #808A3B;
  flex-shrink: 0;
}

.srvc .steptitle {
  font-size: 16px;
  font-weight: 600;
  color: #2a2e14;
  margin: 0;
}

.srvc .stepdesc {
  font-size: 14px;
  line-height: 1.55;
  color: #3d4020;
  margin: 0;
}

.srvc .tabular {
  padding: 64px 0 64px;
  background: linear-gradient(to top, #fff, #E5EBE4);
}

.srvc .tabular .pgwrap {
  display: flex;
  flex-direction: row;
  gap: 48px;
  align-items: flex-start;
}

.srvc .tabnarr {
  flex: 0 0 360px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.srvc .tabnarr .geo {
  width: 18px;
  height: 18px;
}

.srvc .tabnarr h2 {
  font-size: 36px;
  line-height: 1.2;
  color: #2a2e14;
  margin: 0;
}

.srvc .tabnarr p {
  font-size: 16px;
  line-height: 1.55;
  color: #3d4020;
  margin: 0;
}

.srvc .tabnarr .imgwrap {
  width: 100%;
  aspect-ratio: 1/1;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 1px 5px 28px 0 rgba(124, 187, 130, 0.10);
}

.srvc .tabnarr .imgwrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: saturate(1);
  transition: filter 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.srvc .tabnarr .imgwrap:hover img {
  filter: saturate(0);
}

.srvc .tabdata {
  flex: 1 1 0;
}

.srvc .datatable {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

.srvc .datatable th {
  text-align: left;
  font-size: 14px;
  color: #808A3B;
  padding: 8px 16px;
  border-bottom: 2px solid #808A3B;
  white-space: nowrap;
}

.srvc .datatable td {
  padding: 12px 16px;
  color: #2a2e14;
  line-height: 1.55;
  border-bottom: 1px solid #d6dcc5;
  vertical-align: top;
}

.srvc .datatable tr:last-child td {
  border-bottom: none;
}

.srvc .datatable tr:hover td {
  background: #E5EBE4;
  transition: background 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.srvc .gridpulse {
  padding: 48px 0;
  background: #2a2e14;
  position: relative;
  overflow: hidden;
}

.srvc .gridpulse .pgwrap {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px;
}

.srvc .gridcanvas {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
}

.srvc .gridcanvas .gl {
  position: absolute;
  background: rgba(128, 138, 59, 0.12);
  animation: gridpulse 4s ease-in-out infinite;
}

.srvc .gridcanvas .gl.h {
  left: 0;
  right: 0;
  height: 1px;
}

.srvc .gridcanvas .gl.v {
  top: 0;
  bottom: 0;
  width: 1px;
}

.srvc .gridcanvas .gl:nth-child(1) {
  top: 20%;
  animation-delay: 0s;
}

.srvc .gridcanvas .gl:nth-child(2) {
  top: 40%;
  animation-delay: 0.6s;
}

.srvc .gridcanvas .gl:nth-child(3) {
  top: 60%;
  animation-delay: 1.2s;
}

.srvc .gridcanvas .gl:nth-child(4) {
  top: 80%;
  animation-delay: 1.8s;
}

.srvc .gridcanvas .gl:nth-child(5) {
  left: 15%;
  animation-delay: 0.3s;
}

.srvc .gridcanvas .gl:nth-child(6) {
  left: 35%;
  animation-delay: 0.9s;
}

.srvc .gridcanvas .gl:nth-child(7) {
  left: 55%;
  animation-delay: 1.5s;
}

.srvc .gridcanvas .gl:nth-child(8) {
  left: 75%;
  animation-delay: 2.1s;
}

@keyframes gridpulse {

  0%,
  100% {
    opacity: 0.10;
  }

  50% {
    opacity: 0.45;
  }
}

.srvc .gptext {
  text-align: center;
}

.srvc .gptext h2 {
  font-size: 36px;
  line-height: 1.2;
  color: #E5EBE4;
  margin: 0 0 16px;
}

.srvc .gptext p {
  font-size: 16px;
  line-height: 1.55;
  color: #b8c48a;
  margin: 0;
  max-width: 560px;
}

.srvc .gpmetrics {
  display: flex;
  flex-direction: row;
  gap: 48px;
  justify-content: center;
  flex-wrap: wrap;
}

.srvc .gpmet {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}

.srvc .gpmet .val {
  font-size: 50px;
  line-height: 1.2;
  color: #7CBB82;
  font-weight: 700;
}

.srvc .gpmet .lbl {
  font-size: 14px;
  color: #b8c48a;
  text-align: center;
}

.srvc .gpbtn {
  display: inline-block;
  font-size: 16px;
  color: #E5EBE4;
  border: 1px solid #7CBB82;
  border-radius: 7px;
  padding: 16px 32px;
  text-decoration: none;
  letter-spacing: 0;
  transition: background 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), letter-spacing 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.srvc .gpbtn:hover {
  background: #7CBB82;
  color: #2a2e14;
  letter-spacing: 0.05em;
}

.srvc .gpbtn:focus {
  outline: 2px solid #7CBB82;
  outline-offset: 2px;
}

.srvc .gpbtn:active {
  box-shadow: inset 1px 1px 3px 0 rgba(124, 187, 130, 0.22);
}

@media (max-width: 900px) {
  .srvc .titblock .pgwrap {
    flex-direction: column;
    gap: 32px;
  }

  .srvc .titimg {
    flex: 0 0 auto;
  }

  .srvc .titimg img {
    width: 100%;
    max-width: 340px;
    height: auto;
  }

  .srvc .cardgrid .pgwrap {
    grid-template-columns: 1fr;
  }

  .srvc .tabular .pgwrap {
    flex-direction: column;
  }

  .srvc .tabnarr {
    flex: 0 0 auto;
    width: 100%;
  }

  .srvc .stepsrow {
    flex-direction: column;
    gap: 16px;
  }

  .srvc .stepsrow::after {
    display: none;
  }

  .srvc .gpmetrics {
    gap: 32px;
  }
}

@media (max-width: 600px) {
  .srvc .tittext h1 {
    font-size: 36px;
  }

  .srvc .gptext h2 {
    font-size: 26px;
  }

  .srvc .stepshd h2 {
    font-size: 26px;
  }

  .srvc .tabnarr h2 {
    font-size: 26px;
  }

  .srvc .gpmet .val {
    font-size: 36px;
  }

  .srvc .pgwrap {
    padding: 0 16px;
  }
}

.bse {
  overflow-x: hidden;
}

.bse * {
  box-sizing: border-box;
}

.bse .pgwrap {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 32px;
}

.bse .titlesec {
  position: relative;
  padding: 96px 0 48px;
  background: linear-gradient(to bottom, #808A3B 0%, #7CBB82 55%, transparent 100%);
}

.bse .titlesec .circles {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
}

.bse .titlesec .circles span {
  position: absolute;
  border-radius: 42px;
  border: 1px solid rgba(255, 255, 255, 0.13);
  background: rgba(255, 255, 255, 0.04);
}

.bse .titlesec .circles span:nth-child(1) {
  width: 320px;
  height: 320px;
  top: -80px;
  left: -60px;
  border-radius: 42px;
}

.bse .titlesec .circles span:nth-child(2) {
  width: 180px;
  height: 180px;
  top: 40px;
  right: 80px;
  border-radius: 42px;
}

.bse .titlesec .circles span:nth-child(3) {
  width: 240px;
  height: 240px;
  bottom: -60px;
  right: -40px;
  border-radius: 42px;
}

.bse .titlesec .tinner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 32px;
}

.bse .titlesec .imgwrap {
  position: relative;
  width: 100%;
  max-width: 560px;
  aspect-ratio: 1/1;
  border-radius: 14px;
  overflow: hidden;
  align-self: center;
}

.bse .titlesec .imgwrap::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(128, 138, 59, 0.22);
  pointer-events: none;
}

.bse .titlesec .imgwrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: blur(0px);
  transition: filter 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.bse .titlesec .imgwrap:hover img {
  filter: blur(3px);
}

.bse .titlesec .ttext {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.bse .titlelabel {
  display: inline-block;
  font-size: 14px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #fff;
  background: rgba(255, 255, 255, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: 7px;
  padding: 4px 16px;
}

.bse .titlemain {
  font-size: 50px;
  line-height: 1.2;
  color: #fff;
  margin: 0;
}

.bse .titlesub {
  font-size: 20px;
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.88);
  margin: 0;
  max-width: 520px;
}

.bse .titlearrow {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0.55;
  margin-top: 8px;
}

.bse .titlearrow svg {
  width: 24px;
  height: 24px;
}

.bse .divfade {
  height: 2px;
  background: linear-gradient(to right, transparent 0%, #808A3B 30%, #7CBB82 70%, transparent 100%);
  margin: 0;
  border: none;
}

.bse .readysec {
  padding: 96px 0 48px;
  background: #fff;
}

.bse .readysec .pgwrap {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 48px;
  align-items: start;
}

.bse .sidebar {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.bse .sideanchor {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.bse .shapemark {
  width: 20px;
  height: 4px;
  background: #808A3B;
  border-radius: 2px;
  display: block;
}

.bse .sideanchor h2 {
  font-size: 26px;
  line-height: 1.2;
  color: #2a2a2a;
  margin: 0;
}

.bse .sidedesc {
  font-size: 16px;
  line-height: 1.55;
  color: #444;
  margin: 0;
}

.bse .checklist {
  display: flex;
  flex-direction: column;
  gap: 16px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.bse .checklist li {
  display: flex;
  flex-direction: row;
  gap: 12px;
  align-items: flex-start;
}

.bse .checklist li .icobox {
  width: 32px;
  height: 32px;
  min-width: 32px;
  border-radius: 7px;
  background: #E5EBE4;
  display: flex;
  align-items: center;
  justify-content: center;
}

.bse .checklist li .icobox i {
  font-size: 16px;
  color: #808A3B;
}

.bse .checklist li .itemtext {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.bse .checklist li .itemtext strong {
  font-size: 16px;
  color: #2a2a2a;
  line-height: 1.2;
}

.bse .checklist li .itemtext span {
  font-size: 14px;
  color: #555;
  line-height: 1.55;
}

.bse .mainarea {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.bse .mainarea h3 {
  font-size: 20px;
  line-height: 1.2;
  color: #2a2a2a;
  margin: 0;
}

.bse .mainarea p {
  font-size: 16px;
  line-height: 1.8;
  color: #444;
  margin: 0;
}

.bse .accentbox {
  background: #E5EBE4;
  border-radius: 14px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.bse .accentbox h4 {
  font-size: 16px;
  line-height: 1.2;
  color: #808A3B;
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.bse .accentbox p {
  font-size: 16px;
  line-height: 1.8;
  color: #333;
  margin: 0;
}

.bse .diffsec {
  padding: 48px 0 96px;
  background: #E5EBE4;
}

.bse .diffsec .pgwrap {
  display: flex;
  flex-direction: column;
  gap: 48px;
}

.bse .diffhead {
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-width: 600px;
}

.bse .diffhead h2 {
  font-size: 36px;
  line-height: 1.2;
  color: #2a2a2a;
  margin: 0;
}

.bse .diffhead p {
  font-size: 16px;
  line-height: 1.55;
  color: #444;
  margin: 0;
}

.bse .diffgrid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
}

.bse .diffcard {
  background: #fff;
  border-radius: 14px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  box-shadow: 1px 5px 28px 0 rgba(128, 138, 59, 0.10);
  transition: box-shadow 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.bse .diffcard:hover {
  box-shadow: 1px 10px 60px 0 rgba(128, 138, 59, 0.12);
  transform: translateY(-4px);
}

.bse .diffcard .dico {
  width: 44px;
  height: 44px;
  border-radius: 14px;
  background: linear-gradient(to right, #808A3B, rgba(128, 138, 59, 0));
  display: flex;
  align-items: center;
  justify-content: center;
}

.bse .diffcard .dico i {
  font-size: 22px;
  color: #fff;
}

.bse .diffcard h4 {
  font-size: 20px;
  line-height: 1.2;
  color: #2a2a2a;
  margin: 0;
}

.bse .diffcard p {
  font-size: 16px;
  line-height: 1.8;
  color: #555;
  margin: 0;
}

.bse .imgrow {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  align-items: center;
}

.bse .imgrow .imgframe {
  aspect-ratio: 1/1;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 1px 5px 28px 0 rgba(124, 187, 130, 0.10);
}

.bse .imgrow .imgframe img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: blur(2px);
  transition: filter 0.32s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

.bse .imgrow .imgframe:hover img {
  filter: blur(0px);
}

.bse .imgrow .imgtextside {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.bse .imgrow .imgtextside h3 {
  font-size: 26px;
  line-height: 1.2;
  color: #2a2a2a;
  margin: 0;
}

.bse .imgrow .imgtextside p {
  font-size: 16px;
  line-height: 1.8;
  color: #444;
  margin: 0;
}

.bse .approachsec {
  padding: 96px 0 48px;
  background: #fff;
}

.bse .approachsec .pgwrap {
  display: flex;
  flex-direction: column;
  gap: 48px;
}

.bse .aphead {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.bse .aphead h2 {
  font-size: 36px;
  line-height: 1.2;
  color: #2a2a2a;
  margin: 0;
}

.bse .aphead p {
  font-size: 16px;
  line-height: 1.55;
  color: #555;
  margin: 0;
  max-width: 560px;
}

.bse .aprows {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.bse .aprow {
  display: grid;
  grid-template-columns: 64px 1fr;
  gap: 24px;
  align-items: start;
}

.bse .aprow.rev {
  grid-template-columns: 1fr 64px;
}

.bse .aprow.rev .apnum {
  order: 2;
}

.bse .aprow.rev .aptext {
  order: 1;
  text-align: right;
}

.bse .apnum {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: #E5EBE4;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  line-height: 1.2;
  color: #808A3B;
  font-weight: 700;
  flex-shrink: 0;
}

.bse .aptext {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding-top: 8px;
}

.bse .aptext h4 {
  font-size: 20px;
  line-height: 1.2;
  color: #2a2a2a;
  margin: 0;
}

.bse .aptext p {
  font-size: 16px;
  line-height: 1.8;
  color: #555;
  margin: 0;
}

.bse .apimgrow {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  align-items: center;
}

.bse .apimgrow .apimgframe {
  aspect-ratio: 1/1;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 1px 10px 60px 0 rgba(128, 138, 59, 0.12);
}

.bse .apimgrow .apimgframe img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: blur(2px);
  transition: filter 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.bse .apimgrow .apimgframe:hover img {
  filter: blur(0px);
}

.bse .apimgrow .apside {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.bse .statrow {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.bse .statbox {
  background: #E5EBE4;
  border-radius: 14px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.bse .statbox .statval {
  font-size: 36px;
  line-height: 1.2;
  color: #808A3B;
  font-weight: 700;
}

.bse .statbox .statlbl {
  font-size: 14px;
  line-height: 1.55;
  color: #555;
}

.bse .outlinebtn {
  display: inline-block;
  padding: 16px 32px;
  border-radius: 7px;
  border: 1.5px solid #808A3B;
  color: #808A3B;
  font-size: 16px;
  line-height: 1.2;
  text-decoration: none;
  background: transparent;
  cursor: pointer;
  transition: background 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), letter-spacing 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
  align-self: flex-start;
}

.bse .outlinebtn:hover {
  background: #808A3B;
  color: #fff;
  letter-spacing: 0.04em;
  box-shadow: 1px 5px 28px 0 rgba(128, 138, 59, 0.10);
}

.bse .outlinebtn:focus-visible {
  outline: 3px solid #808A3B !important;
  outline-offset: 3px !important;
}

.bse .outlinebtn:active {
  box-shadow: inset 1px 2px 6px 0 rgba(128, 138, 59, 0.18);
}

.bse .flickerbox {
  animation: flicker 3.8s ease-in-out infinite;
  border-radius: 26px;
  border: 1.5px solid rgba(128, 138, 59, 0.28);
  padding: 4px 16px;
  display: inline-block;
  font-size: 14px;
  color: #808A3B;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  align-self: flex-start;
}

@keyframes flicker {

  0%,
  100% {
    border-color: rgba(128, 138, 59, 0.28);
  }

  48% {
    border-color: rgba(128, 138, 59, 0.28);
  }

  50% {
    border-color: rgba(128, 138, 59, 0.72);
  }

  52% {
    border-color: rgba(128, 138, 59, 0.28);
  }

  54% {
    border-color: rgba(128, 138, 59, 0.28);
  }

  56% {
    border-color: rgba(128, 138, 59, 0.55);
  }

  58% {
    border-color: rgba(128, 138, 59, 0.28);
  }
}

.bse .revealdiag {
  opacity: 0;
  transform: translate(16px, 16px);
  animation: diagreveal 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

.bse .revealdiag:nth-child(1) {
  animation-delay: 0.05s;
}

.bse .revealdiag:nth-child(2) {
  animation-delay: 0.12s;
}

.bse .revealdiag:nth-child(3) {
  animation-delay: 0.2s;
}

.bse .revealdiag:nth-child(4) {
  animation-delay: 0.28s;
}

@keyframes diagreveal {
  to {
    opacity: 1;
    transform: translate(0, 0);
  }
}

.bse .twocolist {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px 32px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.bse .twocolist li {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: flex-start;
}

.bse .twocolist li i {
  font-size: 18px;
  color: #7CBB82;
  margin-top: 2px;
  flex-shrink: 0;
}

.bse .twocolist li span {
  font-size: 14px;
  line-height: 1.55;
  color: #444;
}

@media (max-width: 860px) {
  .bse .readysec .pgwrap {
    grid-template-columns: 1fr;
  }

  .bse .diffgrid {
    grid-template-columns: 1fr;
  }

  .bse .imgrow {
    grid-template-columns: 1fr;
  }

  .bse .apimgrow {
    grid-template-columns: 1fr;
  }

  .bse .statrow {
    grid-template-columns: 1fr 1fr;
  }

  .bse .titlemain {
    font-size: 36px;
  }

  .bse .twocolist {
    grid-template-columns: 1fr;
  }

  .bse .aprow.rev .aptext {
    text-align: left;
  }
}

@media (max-width: 560px) {
  .bse .pgwrap {
    padding: 0 16px;
  }

  .bse .titlemain {
    font-size: 26px;
  }

  .bse .diffhead h2,
  .bse .aphead h2 {
    font-size: 26px;
  }

  .bse .statrow {
    grid-template-columns: 1fr;
  }
}

.successPage {
  min-height: 70vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 96px 16px;
  background: #fff;
}

.successPage .successCard {
  max-width: 540px;
  width: 100%;
  background: #E5EBE4;
  border-radius: 26px;
  padding: 48px;
  box-shadow: 1px 10px 60px 0 rgba(128, 138, 59, 0.12);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px;
}

.successPage .iconWrap {
  width: 80px;
  height: 80px;
  border-radius: 42px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 1px 5px 28px 0 rgba(124, 187, 130, 0.10);
  flex-shrink: 0;
}

.successPage .iconWrap svg {
  display: block;
}

.successPage .successContent {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  text-align: center;
}

.successPage .successHeading {
  font-size: 36px;
  line-height: 1.2;
  color: #2d2f1e;
  margin: 0;
}

.successPage .successText {
  font-size: 16px;
  line-height: 1.55;
  color: #3a3d28;
  margin: 0;
  max-width: 400px;
}

.successPage .successDivider {
  width: 48px;
  height: 2px;
  background: linear-gradient(to right, #808A3B, transparent);
  border-radius: 2px;
  flex-shrink: 0;
}

.successPage .backLink {
  display: inline-block;
  font-size: 14px;
  line-height: 1.55;
  color: #808A3B;
  text-decoration: none;
  border: 1px solid #808A3B;
  border-radius: 7px;
  padding: 8px 32px;
  letter-spacing: 0;
  transition: letter-spacing 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), background 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.successPage .backLink:hover {
  background: #808A3B;
  color: #fff;
  letter-spacing: 0.04em;
}

.successPage .backLink:focus-visible {
  outline: 2px solid #808A3B;
  outline-offset: 3px;
}

.successPage .backLink:active {
  box-shadow: inset 1px 1px 3px 0 rgba(128, 138, 59, 0.18);
}