:root {
  --bg: #f7f2eb;
  --surface: #fffaf4;
  --surface-2: #efe5da;
  --text: #2d2521;
  --muted: #766b64;
  --line: rgba(45,37,33,.14);
  --accent: #bb6544;
  --accent-2: #d18766;
  --accent-soft: #ead0c0;
  --dark: #312620;
  --dark-2: #201915;
  --dark-text: #f7eee7;
  --shadow: 0 18px 50px rgba(67,46,35,.10);
  --shadow-hover: 0 28px 64px rgba(67,46,35,.18);
  --radius: 28px;
  --max: 1480px;
}html[data-theme="dark"] {
  --bg: #1d1815;
  --surface: #29211d;
  --surface-2: #342923;
  --text: #f4ece5;
  --muted: #b3a59b;
  --line: rgba(255,255,255,.12);
  --accent: #d88b68;
  --accent-2: #e2a183;
  --accent-soft: #6c493b;
  --dark: #110e0c;
  --dark-2: #0d0a09;
  --shadow: 0 18px 50px rgba(0,0,0,.23);
  --shadow-hover: 0 28px 64px rgba(0,0,0,.35);
}* {
  box-sizing: border-box;
}html {
  scroll-behavior: smooth;
}body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font-family: Inter,Segoe UI,Arial,sans-serif;
  line-height: 1.55;
  transition: background .35s,color .35s;
}body.menu-open {
  overflow: hidden;
}img {
  display: block;
  max-width: 100%;
  height: auto;
}a {
  color: inherit;
  text-decoration: none;
}button,input,textarea {
  font: inherit;
}.bento-card {
  background: var(--surface);
  border: 1px solid var(--line);
  box-shadow: 0 6px 18px rgba(60,40,30,.03);
}.lift {
  transition: transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}.lift:hover {
  box-shadow: var(--shadow-hover);
  z-index: 3;
  border-color: color-mix(in srgb,var(--accent) 35%,var(--line));
}.dark {
  background: linear-gradient(145deg,var(--dark),var(--dark-2));
  color: var(--dark-text);
  border: 1px solid rgba(255,255,255,.08);
}.accent {
  background: linear-gradient(145deg,var(--accent),#c77858);
  color: #fff;
}.accent-soft {
  background: linear-gradient(145deg,var(--accent-soft),var(--surface));
}.pill {
  display: inline-flex;
  width: max-content;
  padding: 7px 12px;
  border: 1px solid var(--line);
  border-radius: 999px;
  text-transform: uppercase;
  letter-spacing: .11em;
  font-size: 11px;
}.pill-dark {
  border-color: rgba(255,255,255,.18);
}.section-no,.card-kicker {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .15em;
  color: var(--accent);
  font-weight: 700;
}.dark .card-kicker,.accent .card-kicker {
  color: #f0c0aa;
}.section-heading {
  margin-bottom: 38px;
}.section-heading h2,.hero h1,.faq-intro h2,.office-intro h2,.contact-copy h2 {
  font-family: Georgia,"Times New Roman",serif;
  font-weight: 400;
  letter-spacing: -.04em;
  line-height: 1.02;
}.section-heading h2 {
  font-size: clamp(40px,5vw,76px);
  margin: 12px 0 14px;
  max-width: 1000px;
}.section-heading p {
  color: var(--muted);
  max-width: 720px;
  font-size: 17px;
}.row-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 30px;
}.text-link,.link-arrow {
  color: var(--accent);
  font-weight: 700;
}.button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  background: linear-gradient(135deg,var(--accent),var(--accent-2));
  color: #fff;
  border: 0;
  border-radius: 14px;
  padding: 15px 22px;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 9px 22px color-mix(in srgb,var(--accent) 22%,transparent);
  transition: .2s;
}.button:hover {
  transform: translateY(-2px);
  filter: saturate(1.08);
}.button-small {
  padding: 11px 16px;
  border-radius: 13px;
  font-size: 13px;
}.button-light {
  background: #fff7f0;
  color: #3b2b24;
  box-shadow: none;
}.outline-button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 14px 18px;
  background: transparent;
  color: inherit;
  font-weight: 700;
  cursor: pointer;
}.icon-disc {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: color-mix(in srgb,var(--accent) 11%,var(--surface));
  font-size: 22px;
}.icon-disc.light {
  background: rgba(255,255,255,.88);
  color: var(--accent);
}.site-header {
  pointer-events: none;
}.header-inner {
  background: color-mix(in srgb,var(--surface) 88%,transparent);
  backdrop-filter: blur(18px);
  border: 1px solid var(--line);
  box-shadow: var(--shadow);
  border-radius: 22px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  pointer-events: auto;
  transition: .25s;
}.site-header.scrolled .header-inner {
  min-height: 60px;
}.brand {
  display: flex;
  align-items: center;
  gap: 11px;
}.brand-mark {
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: linear-gradient(145deg,var(--accent),#9b4f35);
  color: white;
  font: 26px Georgia,serif;
}.brand span:last-child {
  display: grid;
}.brand strong {
  font: 18px Georgia,serif;
}.brand small {
  color: var(--muted);
}.desktop-nav {
  display: flex;
  justify-content: center;
}.desktop-nav a {
  padding: 9px 5px;
  border-radius: 10px;
}.desktop-nav a:hover {
  color: var(--accent);
}.header-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}.phone-link {
  font-weight: 700;
}.theme-toggle,.menu-button {
  width: 42px;
  height: 42px;
  border: 1px solid var(--line);
  border-radius: 50%;
  background: var(--surface);
  color: var(--text);
  cursor: pointer;
}.theme-toggle span {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  transition: .2s;
}.theme-moon {
  opacity: 0;
}html[data-theme="dark"] .theme-sun {
  opacity: 0;
}html[data-theme="dark"] .theme-moon {
  opacity: 1;
}.menu-button {
  display: none;
}.mobile-menu {
  display: none;
  pointer-events: auto;
}.micro-trust {
  color: var(--muted);
}.photo-overlay {
  position: absolute;
  color: #fff;
  display: grid;
  text-shadow: 0 2px 9px #000;
}.photo-overlay strong {
  font: 34px Georgia,serif;
}.photo-badge {
  position: absolute;
  backdrop-filter: blur(8px);
  color: #fff;
  border-radius: 999px;
}.privacy-card {
  display: flex;
  flex-direction: column;
}.privacy-card h3,.areas-card h3,.mini-review h3,.office-mini h3 {
  font: 28px Georgia,serif;
}.privacy-card p {
  color: var(--muted);
  margin: 0;
}.privacy-card .link-arrow {
  margin-top: auto;
}.areas-card {
  display: flex;
  flex-direction: column;
}.areas-card .link-arrow {
  margin-top: auto;
  color: white;
}.mini-steps {
  display: grid;
  align-items: center;
}.mini-review p {
  color: var(--muted);
}.office-mini {
  background: linear-gradient(135deg,var(--surface),var(--surface-2));
}.services-layout {
  display: grid;
  grid-template-columns: .92fr 1.08fr;
  gap: 26px;
  align-items: start;
}.service-list {
  border-top: 1px solid var(--line);
}.service-item {
  width: 100%;
  display: grid;
  align-items: center;
  text-align: left;
  border: 0;
  border-bottom: 1px solid var(--line);
  background: transparent;
  color: var(--text);
  cursor: pointer;
}.service-item span {
  color: var(--accent);
  font-weight: 700;
}.service-item strong {
  font: clamp(22px,2.1vw,32px) Georgia,serif;
  font-weight: 400;
}.service-item b {
  font-size: 22px;
  transition: .2s;
}.service-item:hover,.service-item.active {
  color: var(--accent);
}.service-item:hover b,.service-item.active b {
  transform: translate(4px,-4px);
}.service-preview {
  position: sticky;
  top: 110px;
}.service-preview h3 {
  font: 38px Georgia,serif;
  margin: 18px 0;
}.service-preview p {
  font-size: 17px;
  color: var(--muted);
}.service-preview li {
  padding: 8px 0;
}.service-preview .text-link {
  display: inline-block;
  margin-top: 18px;
}.principles-grid {
  display: grid;
}.principle-photo {
  padding: 0;
  overflow: hidden;
  position: relative;
}.principle-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}.principle-photo blockquote {
  position: absolute;
  font: 34px Georgia,serif;
  margin: 0;
  color: #fff;
}.principle-photo>span {
  position: absolute;
  color: #fff;
}.principle h3 {
  font: 30px Georgia,serif;
}.principle p {
  color: var(--muted);
}.dark.principle p {
  color: #cbbdb3;
}.accent-soft.principle p {
  color: var(--text);
}.roadmap {
  display: grid;
  align-items: stretch;
}.roadmap article {
  flex: 1;
  background: var(--surface);
  border: 1px solid var(--line);
  display: flex;
  flex-direction: column;
}.roadmap article>span {
  display: grid;
  place-items: center;
  background: var(--accent);
  color: white;
  border-radius: 50%;
  font: 20px Georgia,serif;
}.roadmap article i {
  font-style: normal;
}.roadmap article h3 {
  font: 27px Georgia,serif;
}.roadmap article p {
  color: var(--muted);
}.roadmap>b {
  align-self: center;
  color: var(--accent);
  font-size: 28px;
}.roadmap-note {
  margin-top: 18px;
  display: flex;
  gap: 18px;
  align-items: center;
  font: 20px Georgia,serif;
}.cases-grid {
  display: grid;
  grid-template-columns: 1.2fr .72fr .72fr;
  gap: 14px;
}.case-card {
  padding: 28px;
  border: 1px solid var(--line);
}.case-card h3 {
  font: 32px Georgia,serif;
}.case-card p {
  color: var(--muted);
}.dark.case-card p,.accent.case-card p {
  color: rgba(255,255,255,.75);
}.case-feature {
  grid-column: 1/3;
  min-height: 390px;
  position: relative;
  overflow: hidden;
}.case-feature:after {
  position: absolute;
  right: 30px;
  top: 20px;
  font-size: 160px;
  color: rgba(255,255,255,.04);
}.case-columns {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 18px;
}.case-columns p {
  display: grid;
  gap: 8px;
}.case-result {
  display: block;
  margin: 26px 0;
  font: 42px Georgia,serif;
  color: var(--accent-2);
}.case-card a {
  font-weight: 700;
  color: var(--accent);
}.accent.case-card a {
  color: #fff;
}.demo-label {
  font-size: 10px;
  letter-spacing: .15em;
  color: var(--accent);
  border: 1px solid currentColor;
  padding: 5px 8px;
  border-radius: 999px;
}.accent .demo-label {
  color: #fff;
}.safe-note {
  margin-top: 18px;
  padding: 18px 22px;
  border: 1px solid var(--line);
  border-radius: 20px;
  color: var(--muted);
}.consult-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 14px;
}.consult-offer {
  grid-column: 3;
  grid-row: 1/3;
  padding: 34px;
  min-height: 420px;
  display: flex;
  flex-direction: column;
}.consult-offer h3 {
  font: 34px Georgia,serif;
  margin: 0;
}.consult-offer strong {
  font: 92px Georgia,serif;
  margin: 35px 0 10px;
}.consult-offer .button {
  margin-top: auto;
}.consult-item {
  padding: 25px;
  min-height: 200px;
}.consult-item h3 {
  font: 25px Georgia,serif;
  margin: 14px 0 8px;
}.consult-item p {
  color: var(--muted);
  font-size: 14px;
}.dark.consult-item p {
  color: #cbbdb3;
}.price-cards {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 18px;
  align-items: start;
}.price-card {
  padding: 34px;
  min-height: 510px;
  display: flex;
  flex-direction: column;
  border: 1px solid var(--line);
}.price-card h3 {
  font: 34px Georgia,serif;
  margin: 36px 0 12px;
}.price-card>strong {
  font: 52px Georgia,serif;
  color: var(--accent);
  font-weight: 400;
}.dark.price-card>strong {
  color: var(--accent-2);
}.price-card>p {
  color: var(--muted);
  margin-bottom: 30px;
}.dark.price-card>p {
  color: #c7b9af;
}.price-card>.outline-button,.price-card>.button {
  margin-top: auto;
}.price-details {
  display: none;
  margin: 20px -34px -34px;
  border-top: 1px solid var(--line);
}.price-details.open {
  display: block;
}.price-details>div {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 13px 20px;
  border-bottom: 1px solid var(--line);
  font-size: 13px;
}.price-details>a {
  display: block;
  padding: 16px 20px;
  color: var(--accent);
  font-weight: 700;
}.price-bottom {
  margin-top: 18px;
  border: 1px solid var(--line);
  border-radius: 22px;
  padding: 18px 24px;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  color: var(--muted);
}.price-bottom a {
  color: var(--accent);
  font-weight: 700;
}.reviews-grid {
  display: grid;
  grid-template-columns: 1.25fr .75fr .48fr;
  gap: 14px;
}.review-card {
  padding: 30px;
  min-height: 250px;
}.review-feature {
  grid-row: span 2;
  min-height: 514px;
  display: flex;
  flex-direction: column;
}.quote {
  font: 70px Georgia,serif;
  color: var(--accent);
  line-height: .6;
}.review-card blockquote {
  font: clamp(23px,2.3vw,38px) Georgia,serif;
  line-height: 1.2;
  margin: auto 0 26px;
}.review-card footer {
  color: var(--muted);
}.dark.review-card footer,.accent.review-card footer {
  color: rgba(255,255,255,.65);
}.faq-layout {
  display: grid;
  grid-template-columns: .45fr 1fr;
  gap: 70px;
}.faq-intro h2 {
  font-size: clamp(54px,6vw,88px);
  margin: 18px 0;
}.faq-intro>p {
  color: var(--muted);
  font-size: 17px;
  max-width: 350px;
}.faq-help {
  margin-top: 70px;
  padding: 25px;
  max-width: 340px;
}.faq-help strong {
  display: block;
  font: 23px Georgia,serif;
  margin-top: 14px;
}.faq-help p {
  color: var(--muted);
}.faq-list details {
  border-bottom: 1px solid var(--line);
}.faq-list summary {
  list-style: none;
  display: grid;
  grid-template-columns: 54px 1fr 30px;
  gap: 12px;
  align-items: center;
  padding: 24px 0;
  cursor: pointer;
  font: 25px Georgia,serif;
}.faq-list summary::-webkit-details-marker {
  display: none;
}.faq-list summary span {
  color: var(--accent);
}.faq-list summary b {
  font: 22px Arial;
  font-weight: 400;
  transition: .2s;
}.faq-list details[open] summary b {
  transform: rotate(45deg);
}.faq-list details>p {
  margin: 0 0 22px 66px;
  padding: 22px;
  background: var(--surface-2);
  border-radius: 16px;
  color: var(--muted);
  max-width: 850px;
}.office-intro p {
  color: var(--muted);
}.office-main-image {
  overflow: hidden;
  position: relative;
}.office-main-image img {
  width: 100%;
}.office-main-image figcaption {
  position: absolute;
  left: 18px;
  bottom: 18px;
  background: rgba(27,20,17,.78);
  color: #fff;
  border: 1px solid rgba(255,255,255,.12);
  padding: 12px 16px;
  border-radius: 16px;
}.map-card {
  overflow: hidden;
  position: relative;
}.map-card>img {
  width: 100%;
}.office-thumb {
  overflow: hidden;
}.office-thumb img {
  width: 100%;
}.office-thumb figcaption {
  color: var(--muted);
}.office-contact {
  display: flex;
  flex-direction: column;
}.office-contact>div {
  display: grid;
  gap: 2px 10px;
}.office-contact strong {
  grid-column: 2;
}.office-contact span {
  grid-column: 2;
  color: #c6b7ad;
}.office-contact .button {
  margin-top: auto;
}.contact-grid {
  display: grid;
  grid-template-columns: 1.15fr .88fr;
  gap: 14px;
}.contact-copy {
  padding: 46px;
  min-height: 520px;
  background: linear-gradient(135deg,var(--surface),var(--surface-2));
  position: relative;
  overflow: hidden;
}.contact-copy:after {
  content: "⚖";
  position: absolute;
  right: 40px;
  bottom: 35px;
  font-size: 170px;
  color: color-mix(in srgb,var(--accent) 12%,transparent);
}.contact-copy h2 {
  font-size: clamp(60px,6vw,96px);
  margin: 26px 0;
}.contact-copy>p {
  font-size: 20px;
  max-width: 650px;
}.contact-trust {
  display: flex;
  gap: 30px;
  margin-top: 40px;
  flex-wrap: wrap;
}.contact-trust>span {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 2px 10px;
}.contact-trust b {
  grid-column: 2;
}.contact-trust small {
  grid-column: 2;
  color: var(--muted);
}.contact-form {
  padding: 34px;
  display: flex;
  flex-direction: column;
}.contact-form h3 {
  font: 35px Georgia,serif;
  margin: 10px 0;
}.contact-form>p {
  color: #cbbdb4;
}.contact-form label {
  display: grid;
  gap: 7px;
  margin-top: 12px;
}.contact-form label span {
  font-size: 12px;
  color: #baa99f;
  text-transform: uppercase;
  letter-spacing: .08em;
}.contact-form input,.contact-form textarea {
  width: 100%;
  border: 1px solid rgba(255,255,255,.12);
  background: #fff9f4;
  color: #332822;
  border-radius: 12px;
  padding: 14px;
  outline: none;
}.contact-form textarea {
  resize: vertical;
}.contact-form .button {
  margin-top: 14px;
}.contact-form>small {
  margin-top: 14px;
  color: #a99588;
}.contact-form>small a {
  color: var(--accent-2);
}.contact-quote {
  grid-column: 1;
  padding: 30px;
  font: 28px Georgia,serif;
  margin: 0;
}.contact-quote footer {
  font: 14px Arial;
  margin-top: 18px;
}.footer {
  margin-top: 80px;
  background: linear-gradient(145deg,#241b17,#130f0d);
  color: #f5ece4;
  padding-top: 65px;
}.footer-grid {
  display: grid;
  grid-template-columns: 1.2fr .8fr .8fr 1.2fr;
  gap: 50px;
  position: relative;
  overflow: hidden;
}.footer-brand h3 {
  font: 32px Georgia,serif;
  margin: 20px 0 4px;
}.footer-brand p {
  color: #bdaea5;
  max-width: 330px;
}.footer-grid>div:not(.footer-brand):not(.footer-monogram) {
  display: flex;
  flex-direction: column;
  gap: 9px;
}.footer-grid strong {
  margin-bottom: 12px;
}.footer-grid a {
  color: #cdbfb6;
}.footer-grid a:hover {
  color: #fff;
}.footer-monogram {
  font: 220px Georgia,serif;
  line-height: .8;
  color: rgba(216,139,104,.09);
  align-self: center;
  text-align: center;
}.footer-bottom {
  border-top: 1px solid rgba(255,255,255,.1);
  margin-top: 55px;
  padding: 22px 0 30px;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  color: #9f9188;
  font-size: 12px;
}.toast {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 999;
  background: var(--text);
  color: var(--bg);
  padding: 14px 18px;
  border-radius: 14px;
  box-shadow: var(--shadow);
  opacity: 0;
  transform: translateY(20px);
  pointer-events: none;
  transition: .25s;
}.toast.show {
  opacity: 1;
  transform: none;
}.reveal {
  opacity: 0;
  transform: translateY(18px);
  transition: .6s;
}.reveal.visible {
  opacity: 1;
  transform: none;
}@media (max-width:1180px) {
  .desktop-nav {
    display: none;
  }

  .menu-button {
    display: block;
  }

  .phone-link,.header-actions>.button {
    display: none;
  }

  .mobile-menu {
    position: fixed;
    top: 94px;
    left: 24px;
    right: 24px;
    background: var(--surface);
    border: 1px solid var(--line);
    border-radius: 22px;
    box-shadow: var(--shadow);
    padding: 16px;
    grid-template-columns: 1fr 1fr;
    gap: 4px;
  }

  .mobile-menu.open {
    display: grid;
  }

  .mobile-menu a {
    padding: 12px;
    border-bottom: 1px solid var(--line);
  }

  .mobile-menu .button {
    grid-column: 1/-1;
    border: 0;
  }

  .roadmap>b {
    transform: rotate(90deg);
  }

  .consult-grid {
    grid-template-columns: 1fr 1fr;
  }

  .consult-offer {
    grid-column: 2;
    grid-row: 1/3;
  }

  .cases-grid {
    grid-template-columns: 1fr 1fr;
  }

  .case-feature {
    grid-column: 1/-1;
  }

  .footer-grid {
    grid-template-columns: 1fr 1fr 1fr;
  }

  .footer-monogram {
    display: none;
  }
}@media (max-width:900px) {
  .header-inner {
    border-radius: 18px;
  }

  .mobile-menu {
    grid-template-columns: 1fr;
  }

  .hero-grid {
    display: grid;
  }

  .hero-cta-row {
    flex-direction: column;
  }

  .stats-card {
    grid-column: 1;
    padding: 20px;
  }

  .privacy-card {
    grid-column: 2;
  }

  .mini-process {
    grid-column: 1;
  }

  .mini-review {
    grid-column: 2;
  }

  .office-mini {
    grid-column: 1/-1;
  }

  .mini-steps {
    grid-template-columns: repeat(4,1fr);
    gap: 4px;
  }

  .section-heading {
    margin-bottom: 24px;
  }

  .section-heading h2 {
    font-size: 42px;
  }

  .row-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .services-layout {
    grid-template-columns: 1fr;
  }

  .roadmap article {
    margin-left: 18px;
  }

  .roadmap>b {
    transform: none;
    text-align: center;
    margin: 4px 0;
    color: var(--accent);
  }

  .cases-grid {
    grid-template-columns: 1fr;
  }

  .case-feature {
    grid-column: auto;
  }

  .case-columns {
    grid-template-columns: 1fr;
  }

  .consult-grid {
    grid-template-columns: 1fr;
  }

  .consult-offer {
    grid-column: auto;
    grid-row: auto;
    order: -1;
    min-height: 340px;
  }

  .price-cards {
    grid-template-columns: 1fr;
  }

  .price-card {
    min-height: 430px;
  }

  .price-bottom {
    align-items: flex-start;
    flex-direction: column;
  }

  .review-feature {
    grid-column: 1/-1;
    grid-row: auto;
  }

  .faq-layout {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .faq-intro h2 {
    font-size: 54px;
  }

  .faq-help {
    margin-top: 25px;
    max-width: none;
  }

  .faq-list summary {
    font-size: 20px;
    grid-template-columns: 44px 1fr 26px;
  }

  .faq-list details>p {
    margin-left: 0;
  }

  .contact-grid {
    grid-template-columns: 1fr;
  }

  .contact-copy {
    min-height: 440px;
    padding: 28px;
  }

  .contact-form {
    padding: 26px;
  }

  .contact-quote {
    grid-column: auto;
  }

  .footer-grid {
    grid-template-columns: 1fr 1fr;
  }

  .footer-brand {
    grid-column: 1/-1;
  }

  .footer-bottom {
    flex-direction: column;
  }

  .lift:hover {
    transform: none;
  }

  .reveal {
    opacity: 1;
    transform: none;
  }
}@media (max-width:520px) {
  .hero-main {
    min-height: 560px;
    background: linear-gradient(180deg,var(--surface) 0 58%,transparent 72%),url("assets/portrait.svg") right bottom/100% 62% no-repeat,var(--surface);
  }

  .hero-main h1 {
    font-size: 44px;
    max-width: 100%;
  }

  .hero-main>p {
    max-width: 100%;
  }

  .stats-card,.privacy-card {
    grid-column: 1/-1;
    min-height: auto;
  }

  .mini-process,.mini-review {
    grid-column: 1/-1;
  }

  .principles-grid {
    grid-template-columns: 1fr;
  }

  .consult-grid {
    grid-template-columns: 1fr;
  }

  .reviews-grid {
    grid-template-columns: 1fr;
  }

  .office-grid {
    grid-template-columns: 1fr;
  }

  .office-thumb {
    grid-column: auto;
  }

  .footer-grid {
    grid-template-columns: 1fr;
  }

  .roadmap-note {
    font-size: 17px;
  }

  .section-heading h2 {
    font-size: 38px;
  }

  .case-result {
    font-size: 30px;
  }
}@media (prefers-reduced-motion:reduce) {
  * {
    scroll-behavior: auto !important;
    transition: none !important;
    animation: none !important;
  }

  .reveal {
    opacity: 1;
    transform: none;
  }
}.svg-sprite {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
}.ui-icon {
  width: 1em;
  height: 1em;
  display: inline-block;
  vertical-align: -.14em;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.75;
  stroke-linecap: round;
  stroke-linejoin: round;
  flex: 0 0 auto;
}body {
  overflow-x: hidden;
}main,.section,.hero-grid,.services-layout,.principles-grid,.roadmap,.reviews-grid,.office-grid {
  min-width: 0;
}.hero-grid>*,.services-layout>*,.principles-grid>*,.roadmap>*,.reviews-grid>*,.office-grid>* {
  min-width: 0;
}.shell {
  width: calc(100% - clamp(72px,8vw,150px));
  max-width: 1500px;
  margin-inline: auto;
}.section {
  padding: 64px 0;
}.bento-card,.price-card,.case-card,.consult-item,.office-contact,.contact-form,.contact-quote {
  border-radius: 24px;
}.header-inner {
  min-height: 68px;
  padding: 9px 12px;
  gap: 18px;
}.brand-mark {
  width: 42px;
  height: 42px;
  font-size: 22px;
}.brand strong {
  font-size: 17px;
  white-space: nowrap;
}.brand small {
  font-size: 11px;
}.desktop-nav {
  gap: 15px;
  font-size: 12.5px;
}.phone-link {
  font-size: 12.5px;
}.hero {
  padding-bottom: 22px;
}.hero-grid {
  display: grid;
  grid-template-columns: repeat(10,minmax(0,1fr));
  grid-template-rows: clamp(280px,36vh,330px) clamp(145px,18vh,190px) clamp(130px,17vh,170px);
  gap: 12px;
}.hero-main {
  grid-column: span 6;
  grid-row: 1;
  padding: 22px 30px;
  min-height: 0;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
}.hero-main h1 {
  font-size: clamp(46px,3.75vw,62px);
  line-height: .99;
  max-width: 720px;
  margin: 13px 0 12px;
}.hero-main>p {
  font-size: 16px;
  line-height: 1.45;
  max-width: 540px;
  margin: 0;
  color: var(--muted);
}.hero-cta-row .button {
  padding: 13px 20px;
}.micro-trust {
  font-size: 12.5px;
  line-height: 1.35;
}.decor-scale {
  font-size: 74px;
}.hero-mobile-photo,.mobile-personal-badge {
  display: none;
}.hero-photo {
  grid-column: span 4;
  grid-row: 1;
  position: relative;
  background: #251c18;
}.hero-photo:after {
  content: "";
  position: absolute;
  inset: 45% 0 0;
  background: linear-gradient(180deg,transparent,rgba(14,10,8,.74));
  pointer-events: none;
}.photo-overlay span {
  font-size: 13px;
}.photo-badge {
  padding: 9px 12px;
  font-size: 12px;
}.photo-badge .ui-icon {
  font-size: 18px;
  color: #e8a37d;
}.stats-card {
  grid-column: span 4;
  grid-row: 2;
  padding: 20px 24px;
  min-height: 0;
}.card-kicker {
  display: flex;
  align-items: center;
  gap: 8px;
}.card-kicker .ui-icon {
  font-size: 18px;
}.privacy-card {
  grid-column: span 3;
  grid-row: 2;
  gap: 7px;
  min-height: 0;
}.privacy-card .icon-disc {
  opacity: .18;
}.privacy-card h3,.areas-card h3,.mini-review h3,.office-mini h3 {
  font-size: 21px;
  line-height: 1.12;
  margin: 3px 0;
}.privacy-card p {
  font-size: 12px;
  line-height: 1.35;
  max-width: 90%;
}.privacy-card .link-arrow {
  font-size: 12px;
}.areas-card {
  grid-column: span 3;
  grid-row: 2;
  padding: 20px 22px;
  gap: 8px;
  min-height: 0;
  position: relative;
}.areas-card:after {
  content: "";
  position: absolute;
  right: -15px;
  bottom: -30px;
  width: 125px;
  height: 150px;
  border: 2px solid rgba(255,255,255,.09);
  border-radius: 14px;
  transform: rotate(-10deg);
}.areas-card .icon-disc {
  width: 42px;
  height: 42px;
}.areas-card h3 {
  font-size: 24px;
  max-width: 235px;
}.areas-card .link-arrow {
  font-size: 12px;
  z-index: 1;
}.mini-process {
  grid-column: span 5;
  grid-row: 3;
}.mini-process .card-kicker {
  font-size: 10.5px;
  color: var(--text);
}.mini-steps {
  grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
  gap: 7px;
  margin: 14px 0 9px;
}.mini-steps span {
  font: inherit;
  display: grid;
  justify-items: center;
  gap: 6px;
  text-align: center;
}.mini-steps span i {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: color-mix(in srgb,var(--accent) 10%,var(--surface));
  color: var(--accent);
}.mini-steps span i .ui-icon {
  font-size: 19px;
}.mini-steps small {
  font: 10px/1.2 Arial,sans-serif;
  color: var(--muted);
}.mini-steps b {
  font-size: 16px;
  color: color-mix(in srgb,var(--muted) 60%,transparent);
}.mini-review {
  grid-column: span 2;
  grid-row: 3;
  padding: 19px 20px;
  min-height: 0;
}.mini-review h3 {
  font-size: 20px;
  margin: 10px 0 7px;
}.mini-review p {
  font-size: 11.5px;
  line-height: 1.35;
  margin: 0 0 8px;
}.mini-review .link-arrow {
  font-size: 11.5px;
}.office-mini {
  grid-column: span 3;
  grid-row: 3;
  padding: 19px 22px;
  min-height: 0;
}.office-mini:after {
  content: "";
  position: absolute;
  right: -18px;
  bottom: -20px;
  width: 105px;
  height: 135px;
  border: 1px solid color-mix(in srgb,var(--accent) 18%,transparent);
  transform: skewY(-7deg);
  opacity: .5;
}.office-mini .card-kicker {
  font-size: 9.5px;
  max-width: 220px;
}.office-mini h3 {
  font-size: 22px;
  max-width: 190px;
  margin-top: 14px;
}.office-mini .link-arrow {
  font-size: 11.5px;
  position: absolute;
  bottom: 18px;
  left: 22px;
}.availability-mini {
  display: none;
}.service-item {
  padding: 20px 0;
}.service-item strong {
  font-size: clamp(20px,1.9vw,28px);
}.service-arrow {
  justify-self: end;
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  font-size: 20px;
  font-weight: 400;
}.service-preview {
  min-height: 390px;
  padding: 30px;
}.service-preview-icon {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: color-mix(in srgb,var(--accent) 10%,var(--surface));
  color: var(--accent);
  font-size: 26px;
}.service-preview h3 {
  font-size: 34px;
}.principles-grid {
  grid-template-columns: 1.2fr .8fr .8fr;
  grid-auto-rows: 168px;
  gap: 12px;
}.principle-photo {
  grid-row: span 2;
}.principle-photo img {
  object-position: center 25%;
  mix-blend-mode: normal;
  opacity: 1;
}.principle-photo:after {
  content: "";
  position: absolute;
  inset: 35% 0 0;
  background: linear-gradient(180deg,transparent,rgba(60,28,18,.68));
}.principle-photo blockquote {
  left: 26px;
  right: 26px;
  bottom: 50px;
  font-size: 26px;
  z-index: 2;
}.principle-photo>span {
  left: 26px;
  bottom: 22px;
  z-index: 2;
  font-size: 12px;
}.principle {
  padding: 20px;
}.principle .icon-disc {
  width: 40px;
  height: 40px;
  font-size: 20px;
}.principle h3 {
  font-size: 22px;
  line-height: 1.1;
  margin: 12px 0 7px;
}.principle p {
  font-size: 12.5px;
  line-height: 1.38;
  margin: 0;
}.principle-tall {
  grid-row: span 2;
}.principle-tall h3 {
  font-size: 25px;
}.principle-tall p {
  font-size: 14px;
  line-height: 1.5;
}.roadmap {
  grid-template-columns: minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);
  gap: 8px;
}.roadmap article {
  min-height: 250px;
  padding: 18px 17px;
  border-radius: 22px;
}.roadmap article>span {
  width: 38px;
  height: 38px;
  font-size: 17px;
}.roadmap article i {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: color-mix(in srgb,var(--accent) 8%,var(--surface));
  color: var(--accent);
  font-size: 29px;
  margin: 20px 0 14px;
}.roadmap article i .ui-icon {
  font-size: 28px;
}.roadmap article h3 {
  font-size: 21px;
  line-height: 1.12;
  margin: auto 0 8px;
}.roadmap article p {
  font-size: 12px;
  line-height: 1.4;
  margin: 0;
}.roadmap-arrow {
  font-size: 21px;
}.roadmap-note {
  padding: 17px 22px;
  font-size: 17px;
  border-radius: 20px;
}.office-grid {
  display: grid;
  grid-template-columns: repeat(10,minmax(0,1fr));
  grid-template-rows: 350px 255px;
  gap: 12px;
}.office-intro {
  grid-column: span 3;
  grid-row: 1;
  padding: 30px;
  min-height: 0;
}.office-intro h2 {
  font-size: 48px;
  line-height: 1.02;
  margin: 16px 0;
}.office-intro p {
  font-size: 15px;
  line-height: 1.55;
}.office-main-image {
  grid-column: span 7;
  grid-row: 1;
  min-height: 0;
  margin: 0;
}.office-main-image img {
  height: 100%;
  object-fit: cover;
}.office-main-image figcaption {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
}.office-main-image figcaption .ui-icon {
  font-size: 18px;
}.map-card {
  grid-column: span 3;
  grid-row: 2;
  min-height: 0;
}.map-card>img {
  height: 100%;
  object-fit: cover;
}.office-thumb {
  grid-column: span 2;
  grid-row: 2;
  height: 100%;
  display: flex;
  flex-direction: column;
  margin: 0;
}.office-thumb img {
  height: auto;
  flex: 1;
  min-height: 0;
  object-fit: cover;
}.office-thumb figcaption {
  padding: 9px 12px;
  font-size: 11.5px;
}.office-contact {
  grid-column: span 3;
  grid-row: 2;
  padding: 20px;
  gap: 13px;
  min-height: 0;
}.office-contact>div {
  grid-template-columns: 25px 1fr;
  font-size: 12px;
}.office-contact>div>.ui-icon {
  grid-row: 1/3;
  font-size: 21px;
  color: var(--accent-2);
  margin-top: 2px;
}.office-contact span {
  font-size: 11px;
}.office-contact .button {
  padding: 11px 14px;
  font-size: 12px;
}.lift:hover {
  transform: translateY(-5px) scale(1.01);
}@media (max-width:1180px) {
  .shell {
    width: calc(100% - 64px);
  }

  .hero-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    grid-template-rows: auto;
    gap: 12px;
  }

  .hero-main,.hero-photo,.stats-card,.privacy-card,.areas-card,.mini-process,.mini-review,.office-mini {
    grid-row: auto;
    min-height: 0;
  }

  .hero-main {
    grid-column: 1;
    padding: 28px;
    min-height: 360px;
  }

  .hero-photo {
    grid-column: 2;
  }

  .hero-main h1 {
    font-size: 48px;
  }

  .hero-cta-row {
    flex-wrap: wrap;
  }

  .stats-card {
    grid-column: 1;
    min-height: 210px;
  }

  .privacy-card {
    grid-column: 2;
    min-height: 210px;
  }

  .areas-card {
    grid-column: 1;
    min-height: 170px;
  }

  .mini-process {
    grid-column: 2;
    min-height: 170px;
  }

  .mini-review {
    grid-column: 1;
    min-height: 160px;
  }

  .office-mini {
    grid-column: 2;
    min-height: 160px;
  }

  .roadmap {
    grid-template-columns: 1fr;
  }

  .roadmap-arrow {
    font-size: 0;
    text-align: center;
    padding: 2px 0;
  }

  .roadmap-arrow:after {
    content: "↓";
    font-size: 22px;
    color: var(--accent);
  }

  .roadmap article {
    min-height: 170px;
  }

  .office-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    grid-template-rows: auto;
  }

  .office-intro {
    grid-column: 1;
    grid-row: auto;
    min-height: 330px;
  }

  .office-main-image {
    grid-column: 2;
    grid-row: auto;
    min-height: 330px;
  }

  .map-card {
    grid-column: 1;
    grid-row: auto;
    min-height: 300px;
  }

  .office-thumb {
    grid-column: auto;
    grid-row: auto;
    min-height: 250px;
  }

  .office-contact {
    grid-column: 2;
    grid-row: auto;
    min-height: 250px;
  }
}@media (max-width:900px) {
  .shell {
    width: calc(100% - 28px);
    max-width: none;
  }

  .section {
    padding: 46px 0;
  }

  .header-inner {
    min-height: 60px;
  }

  .brand-mark {
    width: 38px;
    height: 38px;
    font-size: 19px;
  }

  .mobile-menu {
    left: 14px;
    right: 14px;
    top: 76px;
  }

  .hero {
    padding-bottom: 28px;
  }

  .hero-grid {
    grid-template-rows: auto;
  }

  .hero-main {
    grid-column: 1/-1;
  }

  .hero-mobile-photo {
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    width: 64%;
    height: 100%;
    object-fit: cover;
    object-position: 53% center;
    z-index: 0;
  }

  .hero-main:after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(90deg,var(--surface) 0 37%,color-mix(in srgb,var(--surface) 91%,transparent) 52%,color-mix(in srgb,var(--surface) 25%,transparent) 75%,rgba(0,0,0,.16) 100%);
    pointer-events: none;
  }

  .hero-main .pill {
    margin-top: 2px;
  }

  .hero-cta-row {
    position: absolute !important;
    left: 24px;
    bottom: 26px;
    align-items: end;
  }

  .hero-cta-row .button {
    max-width: 100%;
    padding: 13px 17px;
    font-size: 13px;
  }

  .micro-trust {
    background: color-mix(in srgb,var(--surface) 88%,transparent);
    backdrop-filter: blur(8px);
    border: 1px solid var(--line);
    padding: 10px 12px;
    border-radius: 999px;
    font-size: 10.5px;
  }

  .decor-scale {
    font-size: 52px;
  }

  .mobile-personal-badge {
    display: flex;
    position: absolute !important;
    right: 16px;
    bottom: 26px;
    align-items: center;
    gap: 6px;
    padding: 9px 11px;
    border-radius: 999px;
    background: rgba(36,25,20,.78);
    color: #fff;
    font-size: 9.5px;
    max-width: 150px;
  }

  .mobile-personal-badge .ui-icon {
    font-size: 16px;
    color: #e9a27d;
  }

  .stats-card,.privacy-card {
    grid-column: span 1;
    padding: 18px;
  }

  .stats-card .card-kicker,.privacy-card .card-kicker {
    font-size: 9px;
    letter-spacing: .08em;
  }

  .privacy-card h3 {
    margin-top: auto;
  }

  .areas-card .card-kicker {
    font-size: 9px;
  }

  .mini-process,.mini-review {
    grid-column: span 1;
  }

  .mini-steps b {
    display: none;
  }

  .mini-steps span i {
    width: 32px;
    height: 32px;
  }

  .mini-steps span i .ui-icon {
    font-size: 16px;
  }

  .mini-steps small {
    font-size: 8.5px;
  }

  .mini-process .link-arrow,.mini-review .link-arrow {
    font-size: 10px;
  }

  .office-mini,.availability-mini {
    grid-column: span 1;
  }

  .office-mini .card-kicker,.availability-mini .card-kicker {
    letter-spacing: .05em;
  }

  .office-mini .link-arrow {
    left: 17px;
    bottom: 15px;
  }

  .availability-icons {
    color: var(--accent);
  }

  .availability-icons .ui-icon {
    font-size: 20px;
  }

  .services-layout {
    display: block;
  }

  .service-list {
    width: 100%;
    min-width: 0;
  }

  .service-item {
    width: 100%;
    padding: 17px 0;
  }

  .service-item strong {
    font-size: 20px;
    line-height: 1.15;
    min-width: 0;
    overflow-wrap: anywhere;
  }

  .service-arrow:after {
    content: "⌄";
    font: 22px Georgia,serif;
    color: var(--text);
  }

  .service-item.active .service-arrow:after {
    content: "⌃";
    color: var(--accent);
  }

  .service-item:hover b,.service-item.active b {
    transform: none;
  }

  .service-preview {
    display: none;
    position: static !important;
    top: auto !important;
    width: 100%;
    max-width: 100%;
    min-height: 0;
    margin: 0 0 10px;
    padding: 20px 18px;
    border-radius: 22px;
    overflow: hidden;
  }

  .service-preview.mobile-open {
    display: block;
  }

  .service-preview h3 {
    font-size: 29px;
    margin: 14px 0;
  }

  .service-preview p {
    font-size: 14px;
  }

  .service-preview ul {
    padding-left: 20px;
  }

  .service-preview li {
    font-size: 13px;
    padding: 5px 0;
  }

  .service-preview-icon {
    width: 46px;
    height: 46px;
    font-size: 23px;
  }

  .principles-grid {
    grid-template-columns: 1fr;
    grid-auto-rows: auto;
  }

  .principle-photo {
    grid-column: 1;
    grid-row: auto;
    min-height: 305px;
  }

  .principle-photo blockquote {
    font-size: 25px;
  }

  .principle {
    min-height: 0;
    padding: 18px 19px;
  }

  .principle h3,.principle-tall h3 {
    font-size: 21px;
  }

  .principle p,.principle-tall p {
    font-size: 12.5px;
    line-height: 1.42;
  }

  .principle-tall {
    grid-row: auto;
  }

  .roadmap {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    margin-left: 0;
    border-left: 0;
    position: relative;
  }

  .roadmap:before {
    content: "";
    position: absolute;
    left: 19px;
    top: 30px;
    bottom: 30px;
    width: 1px;
    background: color-mix(in srgb,var(--accent) 40%,var(--line));
    z-index: 0;
  }

  .roadmap article {
    margin: 0 0 0 38px;
    min-height: 0;
    position: relative;
    z-index: 1;
  }

  .roadmap article>span {
    position: absolute;
    left: -38px;
    top: 18px;
    width: 34px;
    height: 34px;
    font-size: 15px;
  }

  .roadmap article i {
    width: 40px;
    height: 40px;
    margin: 0 0 10px;
  }

  .roadmap article i .ui-icon {
    font-size: 22px;
  }

  .roadmap article h3 {
    margin: 0 0 6px;
  }

  .roadmap-arrow {
    font-size: 0;
    height: 26px;
    margin-left: 38px;
    display: grid;
    place-items: center;
  }

  .roadmap-arrow:after {
    color: var(--accent);
  }

  .reviews-grid {
    grid-template-columns: 1fr 1fr;
  }

  .office-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    grid-template-rows: auto;
    gap: 10px;
  }

  .office-intro {
    grid-column: 1/-1;
    grid-row: auto;
    min-height: 0;
    padding: 24px;
  }

  .office-intro h2 {
    font-size: 42px;
  }

  .office-main-image {
    grid-column: 1/-1;
    grid-row: auto;
    min-height: 285px;
  }

  .map-card {
    grid-column: 1/-1;
    grid-row: auto;
    min-height: 270px;
  }

  .office-thumb {
    grid-column: span 1;
    grid-row: auto;
    min-height: 180px;
  }

  .office-contact {
    grid-column: 1/-1;
    grid-row: auto;
    min-height: 245px;
  }

  .office-contact .button {
    margin-top: auto;
  }
}@media (max-width:560px) {
  .shell {
    width: calc(100% - 24px);
  }

  .hero-main {
    min-height: 500px;
    padding: 22px 20px;
  }

  .hero-main h1 {
    font-size: 38px;
    max-width: 82%;
    margin-top: 22px;
  }

  .hero-main>p {
    font-size: 13px;
    max-width: 70%;
  }

  .hero-cta-row {
    left: 20px;
    bottom: 20px;
  }

  .mobile-personal-badge {
    right: 12px;
    bottom: 22px;
    max-width: 130px;
    font-size: 8.5px;
    padding: 8px 9px;
  }

  .decor-scale {
    right: 27%;
    top: 48px;
  }

  .stats-card,.privacy-card {
    min-height: 252px;
    padding: 15px;
  }

  .privacy-card h3 {
    font-size: 16.5px;
  }

  .privacy-card p {
    font-size: 9.8px;
  }

  .mini-process,.mini-review {
    min-height: 205px;
  }

  .office-mini,.availability-mini {
    min-height: 178px;
  }

  .office-mini h3,.availability-mini h3 {
    font-size: 16.5px;
  }

  .section-heading h2 {
    font-size: 36px;
  }

  .section-heading p {
    font-size: 14px;
  }

  .reviews-grid {
    grid-template-columns: 1fr;
  }

  .review-feature {
    min-height: 330px;
  }

  .office-intro h2 {
    font-size: 38px;
  }

  .office-thumb {
    min-height: 165px;
  }

  .map-card {
    min-height: 250px;
  }
}@media (max-width:1180px) {
  .roadmap-arrow {
    transform: none !important;
  }
}@media (max-width:900px) {
  .hero-cta-row {
    right: 34% !important;
  }

  .hero-cta-row .button {
    width: 100%;
  }

  .stats-card .card-kicker .ui-icon {
    width: 30px;
    height: 30px;
    padding: 7px;
    border-radius: 50%;
    background: rgba(255,255,255,.09);
    color: #e5a174;
  }
}@media (max-width:560px) {
  .hero-cta-row {
    right: 35% !important;
  }
}html,body {
  max-width: 100%;
  overflow-x: hidden;
}.hero-grid,.hero-grid>* {
  max-width: 100%;
}.hero-grid .bento-card {
  min-width: 0;
}@media (min-width:901px) {
  .hero-grid {
    grid-template-columns: repeat(10,minmax(0,1fr));
    gap: 12px;
  }

  .hero-main {
    grid-column: span 6;
    grid-row: 1;
    min-height: 0;
    padding: clamp(20px,2vw,30px);
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .hero-photo {
    grid-column: span 4;
    grid-row: 1;
  }

  .stats-card {
    grid-column: span 4;
    grid-row: 2;
    min-height: 0;
    padding: 18px 22px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }

  .privacy-card {
    grid-column: span 3;
    grid-row: 2;
    min-height: 0;
    flex-direction: column;
    overflow: hidden;
  }

  .areas-card {
    grid-column: span 3;
    grid-row: 2;
    min-height: 0;
    padding: 18px 20px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }

  .mini-process {
    grid-column: span 5;
    grid-row: 3;
    overflow: hidden;
  }

  .mini-review {
    grid-column: span 2;
    grid-row: 3;
    min-height: 0;
    padding: 16px 18px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }

  .office-mini {
    grid-column: span 3;
    grid-row: 3;
    min-height: 0;
    padding: 16px 20px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }

  .availability-mini {
    display: none !important;
  }

  .hero-main h1 {
    font-size: clamp(42px,3.55vw,61px);
    line-height: 1;
    max-width: 720px;
    margin: 12px 0 11px;
  }

  .hero-main>p {
    font-size: clamp(13px,1.05vw,16px);
    line-height: 1.42;
    margin: 0;
    max-width: 560px;
  }

  .hero-cta-row {
    margin-top: 15px;
    gap: 15px;
    flex-wrap: nowrap;
  }

  .hero-cta-row .button {
    font-size: 13px;
    padding: 12px 18px;
    white-space: nowrap;
  }

  .micro-trust {
    font-size: 11.5px;
    max-width: 245px;
  }

  .decor-scale {
    width: 66px;
    height: 66px;
    right: 24px;
    top: 22px;
  }

  .stats-card .card-kicker {
    font-size: 10px;
  }

  .privacy-card .card-kicker {
    padding-right: 44px;
  }

  .privacy-card h3 {
    font-size: clamp(17px,1.3vw,21px);
    line-height: 1.08;
  }

  .privacy-card p {
    font-size: 10.5px;
    line-height: 1.28;
  }

  .privacy-card .link-arrow {
    position: static;
    font-size: 10.5px;
  }

  .privacy-card .icon-disc {
    right: 14px;
    top: 14px;
  }

  .areas-card .icon-disc {
    width: 36px;
    height: 36px;
  }

  .areas-card .card-kicker {
    font-size: 9px;
  }

  .areas-card h3 {
    font-size: clamp(19px,1.55vw,24px);
    line-height: 1.08;
    margin: 4px 0;
  }

  .areas-card .link-arrow {
    margin-top: auto;
    font-size: 10.5px;
  }

  .mini-process .card-kicker {
    font-size: 9.5px;
  }

  .mini-steps {
    min-width: 0;
    margin: 9px 0 7px;
    gap: 5px;
  }

  .mini-steps span {
    min-width: 0;
    gap: 4px;
  }

  .mini-steps span i {
    width: 31px;
    height: 31px;
  }

  .mini-steps span i .ui-icon {
    font-size: 16px;
  }

  .mini-steps small {
    font-size: 8.5px;
    line-height: 1.05;
    white-space: normal;
  }

  .mini-steps b {
    font-size: 13px;
  }

  .mini-review .card-kicker {
    font-size: 9px;
  }

  .mini-review h3 {
    font-size: clamp(16px,1.25vw,20px);
    line-height: 1.08;
    margin: 6px 0 4px;
  }

  .mini-review p {
    font-size: 10px;
    line-height: 1.25;
    margin: 0 0 4px;
  }

  .mini-review .link-arrow {
    margin-top: auto;
    font-size: 9.5px;
    white-space: nowrap;
  }

  .office-mini .card-kicker {
    font-size: 8.5px;
    line-height: 1.25;
    max-width: 90%;
  }

  .office-mini h3 {
    font-size: clamp(17px,1.4vw,22px);
    line-height: 1.08;
    margin: 8px 0 4px;
    max-width: 88%;
  }

  .office-mini .link-arrow {
    position: static;
    margin-top: auto;
    font-size: 9.5px;
    white-space: nowrap;
  }
}@media (min-width:901px) and (max-width:1180px) {
  .shell {
    width: calc(100% - 56px);
  }

  .hero-grid {
    gap: 10px;
  }

  .hero-main {
    padding: 20px 22px;
  }

  .hero-main h1 {
    font-size: clamp(38px,4.15vw,49px);
    max-width: 590px;
  }

  .hero-main>p {
    font-size: 13px;
  }

  .hero-cta-row {
    gap: 10px;
  }

  .hero-cta-row .button {
    font-size: 11.5px;
    padding: 11px 14px;
  }

  .micro-trust {
    font-size: 10px;
    max-width: 190px;
  }

  .micro-trust .ui-icon {
    font-size: 18px;
  }

  .photo-overlay span {
    font-size: 11px;
  }

  .photo-badge {
    padding: 8px 10px;
  }

  .stats-card {
    padding: 16px 18px;
  }

  .privacy-card,.areas-card {
    padding: 16px;
  }

  .areas-card h3 {
    font-size: 19px;
  }

  .areas-card .icon-disc {
    width: 32px;
    height: 32px;
  }

  .mini-review,.office-mini {
    padding: 14px 15px;
  }

  .mini-steps {
    margin: 8px 0 6px;
  }

  .mini-steps span i {
    width: 28px;
    height: 28px;
  }

  .mini-steps small {
    font-size: 7.5px;
  }

  .mini-process .link-arrow,.mini-review .link-arrow,.office-mini .link-arrow {
    font-size: 8.5px;
  }

  .mini-review h3 {
    font-size: 15px;
  }

  .mini-review p {
    font-size: 8.8px;
  }

  .office-mini h3 {
    font-size: 16px;
  }

  .office-mini .card-kicker {
    font-size: 7.5px;
  }
}@media (max-width:900px) {
  .hero-grid {
    width: 100%;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 10px;
  }

  .hero-grid>* {
    min-width: 0;
    max-width: 100%;
    overflow-wrap: anywhere;
  }

  .stats-card,.privacy-card,.areas-card,.mini-process,.mini-review,.office-mini,.availability-mini {
    overflow: hidden;
  }

  .mini-process,.mini-review {
    min-height: 198px;
    padding: 14px 13px;
    display: flex;
    flex-direction: column;
  }

  .mini-process .card-kicker,.mini-review .card-kicker {
    font-size: 8.5px;
    line-height: 1.1;
  }

  .mini-process .mini-steps {
    min-width: 0;
  }

  .mini-process .mini-steps small {
    display: block;
    width: 100%;
    line-height: 1.08;
    letter-spacing: -.015em;
    overflow-wrap: normal;
    word-break: normal;
  }

  .mini-process .link-arrow {
    margin-top: auto;
    white-space: normal;
  }

  .mini-review h3 {
    font-size: 17px;
    line-height: 1.08;
    margin: 10px 0 5px;
  }

  .mini-review p {
    font-size: 9.5px;
    line-height: 1.3;
    margin: 0;
  }

  .mini-review .link-arrow {
    margin-top: auto;
    font-size: 8.8px;
  }

  .office-mini,.availability-mini {
    min-height: 170px;
    padding: 14px;
    display: flex;
    flex-direction: column;
  }

  .office-mini .card-kicker,.availability-mini .card-kicker {
    font-size: 7.2px;
    line-height: 1.2;
  }

  .office-mini h3,.availability-mini h3 {
    font-size: 15px;
    line-height: 1.08;
    margin: 8px 0 4px;
  }

  .office-mini .link-arrow {
    position: static;
    white-space: normal;
  }

  .availability-mini h3 {
    margin: auto 0 5px;
  }

  .stats-card,.privacy-card {
    min-height: 242px;
  }
}@media (max-width:390px) {
  .shell {
    width: calc(100% - 20px);
  }

  .hero-grid {
    gap: 8px;
  }

  .stats-card,.privacy-card {
    padding: 13px;
    min-height: 238px;
  }

  .areas-card .card-kicker {
    font-size: 8px;
  }

  .mini-process,.mini-review {
    min-height: 194px;
    padding: 12px 11px;
  }

  .mini-process .mini-steps {
    margin: 10px -1px 6px;
  }

  .mini-process .mini-steps span i {
    width: 25px;
    height: 25px;
  }

  .mini-process .mini-steps span i .ui-icon {
    font-size: 13px;
  }

  .mini-process .mini-steps small {
    font-size: 6.6px;
  }

  .mini-process .link-arrow,.mini-review .link-arrow {
    font-size: 8px;
  }

  .mini-review h3 {
    font-size: 16px;
  }

  .mini-review p {
    font-size: 8.8px;
  }

  .office-mini,.availability-mini {
    min-height: 164px;
    padding: 12px;
  }

  .office-mini h3,.availability-mini h3 {
    font-size: 14px;
  }

  .office-mini .card-kicker,.availability-mini .card-kicker {
    font-size: 6.7px;
  }
}@media (max-width:330px) {
  .hero-grid {
    grid-template-columns: 1fr;
  }

  .stats-card,.privacy-card,.areas-card,.mini-process,.mini-review,.office-mini,.availability-mini {
    grid-column: 1/-1;
  }

  .mini-process,.mini-review,.office-mini,.availability-mini {
    min-height: 170px;
  }
}html {
  scroll-padding-top: 108px;
}main {
  overflow-x: clip;
}.site-header {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  z-index: 120;
  padding-top: 12px;
}.site-header.scrolled .header-inner {
  transform: translateY(-2px);
  box-shadow: 0 16px 36px rgba(45,28,18,.12);
}@media (max-width:900px) {
  html {
    scroll-padding-top: 86px;
  }

  .site-header {
    padding-top: 8px;
  }
}.hero-grid .pill {
  background: color-mix(in srgb,var(--surface-2) 92%,white);
  border-color: color-mix(in srgb,var(--line) 85%,white);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.65);
}.hero-grid .card-kicker .ui-icon,
.hero-grid .office-mini .card-kicker .ui-icon,
.hero-grid .mini-review .card-kicker .ui-icon,
.hero-grid .micro-trust .ui-icon,
.hero-grid .photo-badge .ui-icon,
.hero-grid .mobile-personal-badge .ui-icon {
  border-radius: 50%;
}.hero-grid .stats-card .card-kicker .ui-icon,
.hero-grid .mini-review .card-kicker .ui-icon,
.hero-grid .office-mini .card-kicker .ui-icon {
  width: 30px;
  height: 30px;
  padding: 6px;
  border: 1px solid color-mix(in srgb,currentColor 26%,transparent);
  background: color-mix(in srgb,var(--surface) 68%,transparent);
}.hero-grid .stats-card .card-kicker .ui-icon {
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.18);
}.hero-grid .micro-trust .ui-icon {
  width: 42px;
  height: 42px;
  padding: 10px;
  border: 1px solid color-mix(in srgb,var(--accent) 25%,transparent);
  background: color-mix(in srgb,var(--accent) 10%,var(--surface));
}.decor-scale {
  filter: drop-shadow(0 8px 18px rgba(177,105,71,.08));
}.hero-grid .bento-card {
  position: relative;
  isolation: isolate;
}.hero-grid .bento-card > * {
  position: relative;
  z-index: 2;
}.stats-card::after,
.privacy-card::after,
.areas-card::after,
.mini-process::after,
.mini-review::after,
.office-mini::after {
  content: "";
  position: absolute;
  right: 14px;
  top: 14px;
  pointer-events: none;
  z-index: 1;
  opacity: .46;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}.stats-card::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 220' fill='none'%3E%3Cpath d='M12 160c25-16 53-22 83-18s55 0 78-11' stroke='%23d7a384' stroke-width='2'/%3E%3Cpath d='M12 144c25-16 53-22 83-18s55 0 78-11' stroke='%23d7a384' stroke-width='2'/%3E%3Cpath d='M12 128c25-16 53-22 83-18s55 0 78-11' stroke='%23d7a384' stroke-width='2'/%3E%3Cpath d='M12 112c25-16 53-22 83-18s55 0 78-11' stroke='%23d7a384' stroke-width='2'/%3E%3C/svg%3E");
}.privacy-card {
  padding-right: 108px;
}.privacy-card .icon-disc {
  background: color-mix(in srgb,var(--accent) 12%,var(--surface));
  color: var(--accent);
}.privacy-card::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 96' fill='none' stroke='%23d7c3b8' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='28' y='40' width='40' height='34' rx='8'/%3E%3Cpath d='M36 40V29c0-10 5-17 12-17s12 7 12 17v11'/%3E%3Ccircle cx='48' cy='56' r='2'/%3E%3Cpath d='M48 58v7'/%3E%3C/svg%3E");
}.areas-card {
  overflow: hidden;
}.areas-card::after {
  right: -4px;
  bottom: -8px;
  top: auto;
  width: 124px;
  height: 124px;
  opacity: .22;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke='%23f3cbb6' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M37 21h34l17 17v49a10 10 0 0 1-10 10H37a10 10 0 0 1-10-10V31a10 10 0 0 1 10-10Z'/%3E%3Cpath d='M71 21v20h20'/%3E%3Cpath d='M42 60h34M42 72h34'/%3E%3C/svg%3E");
}.mini-process {
  padding-right: 22px;
}.mini-process::after {
  right: 18px;
  top: 20px;
  width: 92px;
  height: 64px;
  opacity: .15;
}.mini-review::after {
  right: 18px;
  bottom: 14px;
  top: auto;
  width: 76px;
  height: 36px;
  opacity: .82;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 92 42' fill='none'%3E%3Ccircle cx='17' cy='21' r='16' fill='%23e1c4b6'/%3E%3Ccircle cx='41' cy='21' r='16' fill='%23d5b09d'/%3E%3Ccircle cx='65' cy='21' r='16' fill='%23c69373'/%3E%3Ccircle cx='79' cy='21' r='12' fill='%23f4ece5'/%3E%3Cpath d='M74.5 21h9' stroke='%238c6754' stroke-width='2'/%3E%3Cpath d='M79 16.5v9' stroke='%238c6754' stroke-width='2'/%3E%3C/svg%3E");
}.office-mini {
  padding-right: 90px;
}.mini-process .mini-steps {
  justify-content: space-between;
}.mini-process .mini-steps span {
  align-self: start;
}@media (min-width:901px) {
  .hero-grid {
    align-items: stretch;
  }

  .mini-process {
    min-height: 194px;
  }
}@media (max-width:900px) {
  .hero-grid .stats-card .card-kicker .ui-icon,
  .hero-grid .mini-review .card-kicker .ui-icon,
  .hero-grid .office-mini .card-kicker .ui-icon {
    width: 24px;
    height: 24px;
    padding: 5px;
  }

  .hero-grid .pill {
    padding: 7px 12px;
    background: color-mix(in srgb,var(--surface-2) 90%,white);
  }

  .privacy-card {
    padding-right: 18px;
  }

  .privacy-card .icon-disc {
    margin-bottom: 4px;
  }

  .stats-card::after {
    width: 144px;
    height: 144px;
    right: -22px;
    top: 22px;
  }

  .mini-process::after {
    width: 72px;
    height: 52px;
    right: 12px;
    top: 16px;
    opacity: .1;
  }

  .mini-review::after {
    width: 58px;
    height: 28px;
    right: 12px;
    bottom: 12px;
    opacity: .72;
  }
}body {
  padding-top: 112px;
}@media (max-width:900px) {
  body {
    padding-top: 82px;
  }
}.hero {
  padding-top: 0;
}.hero-grid {
  overflow: visible;
}.hero-main {
  padding-top: 32px !important;
  overflow: hidden;
  isolation: isolate;
}.hero-main .pill {
  position: relative;
  top: 0;
  left: 0;
  z-index: 3;
  margin: 0 0 8px;
  display: inline-flex;
  background: color-mix(in srgb,var(--surface-2) 92%,white);
  border: 1px solid color-mix(in srgb,var(--line) 88%,white);
  box-shadow: 0 1px 0 rgba(255,255,255,.68) inset;
}.hero-main h1 {
  position: relative;
  z-index: 2;
}.hero-main>p {
  position: relative;
  z-index: 2;
}.hero-cta-row {
  position: relative !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 18px;
  margin-top: 28px;
  z-index: 3;
}.micro-trust {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 0;
  max-width: 310px;
  background: transparent;
  border: 0;
  backdrop-filter: none;
}.micro-trust .ui-icon {
  width: 54px;
  height: 54px;
  padding: 14px;
  background: color-mix(in srgb,var(--accent) 8%,var(--surface));
  border: 1px solid color-mix(in srgb,var(--accent) 20%,transparent);
  border-radius: 50%;
  font-size: 24px;
  color: var(--accent);
}.decor-scale {
  position: absolute !important;
  right: 36px !important;
  top: 34px !important;
  left: auto !important;
  bottom: auto !important;
  width: 86px !important;
  height: 86px !important;
  z-index: 1;
  color: #ecd8cf;
  opacity: .98;
  stroke-width: 1.55;
  transform: none !important;
}.hero-photo {
  overflow: hidden;
  min-height: 370px;
}.hero-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}.photo-overlay {
  left: 24px;
  bottom: 64px;
  z-index: 3;
}.photo-overlay strong {
  font-size: 32px;
  line-height: 1.02;
}.photo-badge {
  display: flex !important;
  align-items: center;
  gap: 8px;
  left: 22px !important;
  right: 22px !important;
  bottom: 18px !important;
  z-index: 4;
  background: rgba(25,17,13,.74);
  border: 1px solid rgba(255,255,255,.22);
}.privacy-card {
  padding: 24px 92px 24px 24px !important;
  position: relative;
}.privacy-card .icon-disc {
  position: absolute !important;
  top: 18px !important;
  right: 18px !important;
  left: auto !important;
  bottom: auto !important;
  margin: 0 !important;
  width: 46px !important;
  height: 46px !important;
  z-index: 3;
}.privacy-card .card-kicker {
  display: block;
  max-width: 78%;
  line-height: 1.18;
}.privacy-card h3 {
  margin: 8px 0 6px;
}.mini-process {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}.mini-process .card-kicker {
  margin-bottom: 8px;
}.mini-process .mini-steps small {
  font-size: 10.5px;
  line-height: 1.2;
  max-width: 90px;
  color: var(--muted);
}.stats-card .card-kicker .ui-icon,.mini-review .card-kicker .ui-icon,.office-mini .card-kicker .ui-icon {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  padding: 7px;
  border-radius: 50%;
  border: 1px solid color-mix(in srgb,currentColor 22%,transparent);
}.mini-review .card-kicker .ui-icon,.office-mini .card-kicker .ui-icon {
  background: color-mix(in srgb,var(--surface-2) 92%,white);
}.areas-card .icon-disc,.privacy-card .icon-disc {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.65);
}@media (max-width:1180px) {
  .hero-photo {
    min-height: 340px;
  }
}@media (max-width:900px) {
  .hero-main {
    padding-top: 26px !important;
  }

  .hero-main .pill {
    margin-bottom: 10px;
  }

  .decor-scale {
    right: 18px !important;
    top: 42px !important;
    width: 66px !important;
    height: 66px !important;
  }

  .hero-cta-row {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    margin-top: 18px;
  }

  .micro-trust {
    max-width: 100%;
  }

  .micro-trust .ui-icon {
    width: 42px;
    height: 42px;
    padding: 11px;
    font-size: 19px;
  }

  .privacy-card .icon-disc {
    top: 14px !important;
    right: 14px !important;
  }

  .mini-process .mini-steps small {
    font-size: 8.4px;
    max-width: none;
  }
}@media (min-width:901px) {
  .hero-photo {
    min-height: 0 !important;
    height: 100% !important;
    align-self: stretch !important;
    overflow: hidden !important;
  }

  .hero-photo img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center 24% !important;
  }

  .photo-overlay {
    left: 24px !important;
    right: 20px !important;
    bottom: 62px !important;
    max-width: calc(100% - 44px) !important;
    z-index: 4 !important;
  }

  .photo-overlay strong {
    display: block !important;
    font: clamp(23px,1.75vw,31px)/1.02 Georgia,"Times New Roman",serif !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
  }

  .photo-overlay span {
    font-size: 12px !important;
  }

  .photo-badge {
    display: flex !important;
    left: 20px !important;
    right: 20px !important;
    bottom: 14px !important;
    min-height: 40px !important;
    padding: 8px 12px !important;
    font-size: 11px !important;
    z-index: 5 !important;
  }

  .privacy-card {
    display: grid !important;
    grid-template-columns: 44px minmax(0,1fr) !important;
    grid-template-rows: auto auto 1fr auto !important;
    column-gap: 11px !important;
    row-gap: 7px !important;
    padding: 18px 20px !important;
  }

  .privacy-card .icon-disc {
    position: static !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 42px !important;
    height: 42px !important;
    margin: 0 !important;
    opacity: 1 !important;
    background: color-mix(in srgb,var(--accent) 9%,var(--surface)) !important;
    color: var(--accent) !important;
  }

  .privacy-card .card-kicker {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: center !important;
    max-width: none !important;
    padding: 0 !important;
    font-size: 9.5px !important;
    line-height: 1.18 !important;
  }

  .privacy-card h3 {
    grid-column: 1/-1 !important;
    grid-row: 2 !important;
    max-width: 86% !important;
    margin: 2px 0 0 !important;
  }

  .privacy-card p {
    grid-column: 1/-1 !important;
    grid-row: 3 !important;
    max-width: 82% !important;
    margin: 0 !important;
  }

  .privacy-card .link-arrow {
    grid-column: 1/-1 !important;
    grid-row: 4 !important;
    margin-top: auto !important;
  }

  .mini-process {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    padding: 17px 20px 15px !important;
  }

  .mini-process .card-kicker {
    margin: 0 !important;
  }

  .mini-process .mini-steps {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: minmax(0,1fr) 22px minmax(0,1fr) 22px minmax(0,1fr) 22px minmax(0,1fr) !important;
    align-items: center !important;
    justify-items: center !important;
    column-gap: 4px !important;
    row-gap: 0 !important;
    margin: 10px 0 7px !important;
  }

  .mini-process .mini-steps span {
    min-width: 0 !important;
    width: 100% !important;
    display: grid !important;
    justify-items: center !important;
    align-content: start !important;
    gap: 5px !important;
    text-align: center !important;
  }

  .mini-process .mini-steps span i {
    width: 36px !important;
    height: 36px !important;
  }

  .mini-process .mini-steps span i .ui-icon {
    font-size: 18px !important;
  }

  .mini-process .mini-steps small {
    display: block !important;
    width: 100% !important;
    max-width: 100px !important;
    font-size: 9.5px !important;
    line-height: 1.12 !important;
    white-space: normal !important;
  }

  .mini-process .mini-steps b {
    display: grid !important;
    place-items: center !important;
    width: 22px !important;
    font-size: 15px !important;
    line-height: 36px !important;
    color: color-mix(in srgb,var(--muted) 62%,transparent) !important;
  }

  .mini-process .link-arrow {
    margin-top: auto !important;
    font-size: 10px !important;
    white-space: nowrap !important;
  }
}@media (min-width:901px) and (max-width:1180px) {
  .photo-overlay {
    bottom: 56px !important;
    left: 18px !important;
    right: 16px !important;
  }

  .photo-overlay strong {
    font-size: 21px !important;
  }

  .photo-badge {
    left: 16px !important;
    right: 16px !important;
    bottom: 12px !important;
    font-size: 9.5px !important;
    min-height: 36px !important;
  }

  .privacy-card {
    grid-template-columns: 38px minmax(0,1fr) !important;
    padding: 14px 15px !important;
    column-gap: 8px !important;
  }

  .privacy-card .icon-disc {
    width: 36px !important;
    height: 36px !important;
  }

  .privacy-card .card-kicker {
    font-size: 8.2px !important;
  }

  .privacy-card h3 {
    font-size: 15.5px !important;
    max-width: 90% !important;
  }

  .privacy-card p {
    font-size: 8.7px !important;
    max-width: 87% !important;
  }

  .mini-process {
    padding: 13px 15px 12px !important;
  }

  .mini-process .mini-steps {
    grid-template-columns: minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1fr) !important;
    margin: 7px 0 5px !important;
  }

  .mini-process .mini-steps span i {
    width: 31px !important;
    height: 31px !important;
  }

  .mini-process .mini-steps span i .ui-icon {
    font-size: 15px !important;
  }

  .mini-process .mini-steps small {
    font-size: 7.7px !important;
  }

  .mini-process .mini-steps b {
    width: 18px !important;
    font-size: 12px !important;
    line-height: 31px !important;
  }

  .mini-process .link-arrow {
    font-size: 8.5px !important;
  }
}@media (max-width:900px) {
  .privacy-card {
    display: grid !important;
  }

  .privacy-card .icon-disc {
    opacity: 1 !important;
  }

  .privacy-card h3,.privacy-card p,.privacy-card .link-arrow {
    grid-column: 1/-1 !important;
  }
}@media (min-width:901px) {
  .hero-photo {
    position: relative !important;
    isolation: isolate !important;
  }

  .hero-photo::after {
    z-index: 2 !important;
    inset: 42% 0 0 !important;
    background: linear-gradient(180deg,transparent 0%,rgba(18,12,10,.22) 34%,rgba(18,12,10,.78) 100%) !important;
  }

  .hero-photo .photo-overlay {
    position: absolute !important;
    left: 24px !important;
    right: 24px !important;
    top: auto !important;
    bottom: 68px !important;
    z-index: 4 !important;
    display: grid !important;
    gap: 2px !important;
    color: #fff !important;
    pointer-events: none !important;
  }

  .hero-photo .photo-overlay strong {
    display: block !important;
    margin: 0 !important;
    font: clamp(22px,1.7vw,31px)/1.05 Georgia,"Times New Roman",serif !important;
    color: #fff !important;
    text-shadow: 0 2px 12px rgba(0,0,0,.72) !important;
  }

  .hero-photo .photo-overlay span {
    display: block !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    color: rgba(255,255,255,.94) !important;
    text-shadow: 0 2px 8px rgba(0,0,0,.72) !important;
  }

  .hero-photo .photo-badge {
    position: absolute !important;
    left: 20px !important;
    right: 20px !important;
    top: auto !important;
    bottom: 14px !important;
    z-index: 5 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 40px !important;
    margin: 0 !important;
    padding: 8px 13px !important;
    border-radius: 999px !important;
    background: rgba(28,20,16,.82) !important;
    border: 1px solid rgba(255,255,255,.24) !important;
    backdrop-filter: blur(9px) !important;
    color: #fff !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
    box-sizing: border-box !important;
  }

  .hero-photo .photo-badge .ui-icon {
    width: 18px !important;
    height: 18px !important;
    font-size: 18px !important;
    color: #eba179 !important;
    flex: 0 0 18px !important;
  }
}@media (min-width:901px) and (max-width:1180px) {
  .hero-photo .photo-overlay {
    left: 18px !important;
    right: 18px !important;
    bottom: 60px !important;
  }

  .hero-photo .photo-overlay strong {
    font-size: 21px !important;
  }

  .hero-photo .photo-overlay span {
    font-size: 10.5px !important;
  }

  .hero-photo .photo-badge {
    left: 16px !important;
    right: 16px !important;
    bottom: 12px !important;
    min-height: 36px !important;
    padding: 7px 10px !important;
    font-size: 9.5px !important;
  }
}@media (max-width:900px) {
  .hero {
    padding-top: 10px !important;
  }

  .hero-main {
    display: block !important;
    position: relative !important;
    padding: 26px 22px 22px !important;
    overflow: hidden !important;
    background: var(--surface) !important;
    isolation: isolate !important;
  }

  .hero-main .hero-mobile-photo {
    display: block !important;
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    width: 62% !important;
    max-width: none !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: 52% 34% !important;
    z-index: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
  }

  .hero-main::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    pointer-events: none !important;
    background: linear-gradient(180deg,transparent 0 58%,rgba(29,20,16,.04) 70%,rgba(29,20,16,.38) 100%),
      linear-gradient(90deg,var(--surface) 0 35%,color-mix(in srgb,var(--surface) 96%,transparent) 45%,color-mix(in srgb,var(--surface) 75%,transparent) 57%,color-mix(in srgb,var(--surface) 18%,transparent) 78%,transparent 100%) !important;
  }

  .hero-main>*:not(.hero-mobile-photo) {
    position: relative !important;
    z-index: 3 !important;
  }

  .hero-main .pill {
    display: inline-flex !important;
    margin: 0 !important;
    padding: 7px 12px !important;
    font-size: 9.5px !important;
    line-height: 1 !important;
    background: color-mix(in srgb,var(--surface-2) 92%,white) !important;
  }

  .hero-main h1 {
    max-width: 76% !important;
    margin: 28px 0 16px !important;
    font-size: clamp(38px,10.5vw,46px) !important;
    line-height: 1.01 !important;
    letter-spacing: -.045em !important;
  }

  .hero-main>p {
    max-width: 68% !important;
    margin: 0 !important;
    font-size: 13.5px !important;
    line-height: 1.48 !important;
  }

  .hero-main .decor-scale {
    position: absolute !important;
    top: 52px !important;
    right: 24px !important;
    left: auto !important;
    bottom: auto !important;
    width: 54px !important;
    height: 54px !important;
    z-index: 2 !important;
    opacity: .75 !important;
  }

  .hero-main .hero-cta-row {
    position: absolute !important;
    margin: 0 !important;
    align-items: start !important;
    z-index: 4 !important;
  }

  .hero-main .hero-cta-row .button {
    padding: 13px 13px !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
  }

  .hero-main .micro-trust {
    width: 100% !important;
    max-width: none !important;
    border: 1px solid color-mix(in srgb,var(--line) 90%,transparent) !important;
    border-radius: 18px !important;
    background: color-mix(in srgb,var(--surface) 90%,transparent) !important;
    backdrop-filter: blur(9px) !important;
    font-size: 8.7px !important;
    line-height: 1.3 !important;
    color: var(--muted) !important;
  }

  .hero-main .micro-trust .ui-icon {
    width: 32px !important;
    height: 32px !important;
    padding: 7px !important;
    font-size: 16px !important;
    background: color-mix(in srgb,var(--accent) 10%,var(--surface)) !important;
  }

  .hero-main .mobile-personal-badge {
    position: absolute !important;
    right: 14px !important;
    left: auto !important;
    bottom: 25px !important;
    top: auto !important;
    width: min(38%,145px) !important;
    max-width: 145px !important;
    min-height: 43px !important;
    margin: 0 !important;
    background: rgba(30,21,17,.82) !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    backdrop-filter: blur(8px) !important;
    color: #fff !important;
    z-index: 5 !important;
  }

  .hero-main .mobile-personal-badge .ui-icon {
    width: 17px !important;
    height: 17px !important;
    flex: 0 0 17px !important;
    color: #eda37c !important;
  }

  .hero-photo {
    display: none !important;
  }
}@media (max-width:390px) {
  .hero-main {
    padding: 22px 18px 18px !important;
  }

  .hero-main .hero-mobile-photo {
    width: 64% !important;
    object-position: 51% 34% !important;
  }

  .hero-main h1 {
    max-width: 78% !important;
    margin-top: 25px !important;
    font-size: 37px !important;
  }

  .hero-main>p {
    max-width: 70% !important;
    font-size: 12.5px !important;
  }

  .hero-main .decor-scale {
    right: 15px !important;
    top: 47px !important;
    width: 48px !important;
    height: 48px !important;
  }

  .hero-main .hero-cta-row {
    gap: 8px !important;
  }

  .hero-main .hero-cta-row .button {
    padding: 12px 9px !important;
  }

  .hero-main .mobile-personal-badge {
    right: 10px !important;
    bottom: 18px !important;
    width: 39% !important;
    max-width: 130px !important;
  }
}.hero-trust-row {
  display: contents;
}@media (max-width:900px) {
  .hero-main {
    min-height: 552px !important;
  }

  .hero-main .hero-cta-row {
    left: 22px !important;
    right: 22px !important;
    bottom: 20px !important;
    width: auto !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 9px !important;
  }

  .hero-main .hero-cta-row .button {
    width: min(62%,220px) !important;
    justify-self: start !important;
  }

  .hero-main .hero-trust-row {
    display: grid !important;
    grid-template-columns: minmax(0,1.25fr) minmax(108px,.78fr) !important;
    gap: 8px !important;
    width: 100% !important;
    min-width: 0 !important;
    align-items: stretch !important;
  }

  .hero-main .micro-trust,
  .hero-main .mobile-personal-badge {
    position: static !important;
    inset: auto !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 44px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  .hero-main .micro-trust {
    display: grid !important;
  }

  .hero-main .mobile-personal-badge {
    display: grid !important;
    grid-template-columns: 17px minmax(0,1fr) !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 8px 9px !important;
    border-radius: 18px !important;
    font-size: 8.2px !important;
    line-height: 1.2 !important;
  }
}@media (max-width:390px) {
  .hero-main {
    min-height: 540px !important;
  }

  .hero-main .hero-cta-row {
    left: 18px !important;
    right: 18px !important;
    bottom: 16px !important;
    width: auto !important;
  }

  .hero-main .hero-cta-row .button {
    width: 62% !important;
    font-size: 10.7px !important;
  }

  .hero-main .hero-trust-row {
    grid-template-columns: minmax(0,1.2fr) minmax(100px,.8fr) !important;
    gap: 7px !important;
  }

  .hero-main .micro-trust {
    font-size: 7.6px !important;
  }

  .hero-main .micro-trust .ui-icon {
    width: 28px !important;
    height: 28px !important;
    padding: 6px !important;
  }

  .hero-main .mobile-personal-badge {
    grid-template-columns: 15px minmax(0,1fr) !important;
    font-size: 7.4px !important;
    padding: 7px !important;
  }

  .hero-main .mobile-personal-badge .ui-icon {
    width: 15px !important;
    height: 15px !important;
  }
}@media (max-width:335px) {
  .hero-main {
    min-height: 585px !important;
  }

  .hero-main .hero-cta-row .button {
    width: 100% !important;
  }

  .hero-main .hero-trust-row {
    grid-template-columns: 1fr !important;
  }

  .hero-main .micro-trust,.hero-main .mobile-personal-badge {
    min-height: 42px !important;
  }
}@media (max-width:900px) {
  .areas-card {
    grid-column: 1/-1 !important;
    display: grid !important;
    grid-template-columns: 50px minmax(0,1fr) !important;
    grid-template-rows: auto auto !important;
    column-gap: 13px !important;
    row-gap: 7px !important;
    align-items: center !important;
    min-height: 106px !important;
    padding: 17px 20px !important;
    overflow: hidden !important;
  }

  .areas-card .icon-disc {
    grid-column: 1 !important;
    grid-row: 1/3 !important;
    align-self: center !important;
    width: 46px !important;
    height: 46px !important;
    margin: 0 !important;
  }

  .areas-card .icon-disc .ui-icon {
    font-size: 22px !important;
  }

  .areas-card .card-kicker {
    display: none !important;
  }

  .areas-card h3 {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: end !important;
    max-width: 230px !important;
    margin: 0 !important;
    font-size: 20px !important;
    line-height: 1.08 !important;
  }

  .areas-card .link-arrow {
    grid-column: 2 !important;
    grid-row: 2 !important;
    align-self: start !important;
    margin: 0 !important;
    font-size: 10.5px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
  }

  .areas-card::after {
    width: 96px !important;
    height: 96px !important;
    right: -12px !important;
    bottom: -15px !important;
    opacity: .17 !important;
  }

  .privacy-card {
    grid-template-columns: 30px minmax(0,1fr) !important;
    grid-template-rows: auto auto 1fr auto !important;
    column-gap: 6px !important;
    row-gap: 6px !important;
    padding: 14px 13px !important;
  }

  .privacy-card .icon-disc {
    position: static !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .privacy-card .icon-disc .ui-icon {
    font-size: 16px !important;
  }

  .privacy-card .card-kicker {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: center !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 7.35px !important;
    line-height: 1.12 !important;
    letter-spacing: .035em !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }

  .privacy-card h3 {
    grid-column: 1/-1 !important;
    grid-row: 2 !important;
    margin: 3px 0 0 !important;
    font-size: 16px !important;
    line-height: 1.08 !important;
  }

  .privacy-card p {
    grid-column: 1/-1 !important;
    grid-row: 3 !important;
    margin: 0 !important;
    font-size: 9px !important;
    line-height: 1.32 !important;
  }

  .privacy-card .link-arrow {
    grid-column: 1/-1 !important;
    grid-row: 4 !important;
    margin-top: auto !important;
    font-size: 9.2px !important;
  }
}@media (max-width:390px) {
  .areas-card {
    min-height: 102px !important;
    padding: 15px 17px !important;
    grid-template-columns: 44px minmax(0,1fr) !important;
    column-gap: 11px !important;
  }

  .areas-card .icon-disc {
    width: 42px !important;
    height: 42px !important;
  }

  .areas-card h3 {
    font-size: 18.5px !important;
    max-width: 210px !important;
  }

  .areas-card .link-arrow {
    font-size: 9.6px !important;
  }

  .privacy-card {
    grid-template-columns: 27px minmax(0,1fr) !important;
    column-gap: 5px !important;
    padding: 13px 11px !important;
  }

  .privacy-card .icon-disc {
    width: 27px !important;
    height: 27px !important;
    min-width: 27px !important;
  }

  .privacy-card .icon-disc .ui-icon {
    font-size: 14px !important;
  }

  .privacy-card .card-kicker {
    font-size: 6.85px !important;
    letter-spacing: .02em !important;
    line-height: 1.1 !important;
  }

  .privacy-card p {
    font-size: 8.6px !important;
  }
}@media (max-width:900px) {
  .availability-mini {
    display: flex;
    flex-direction: column;
    gap: 0;
    min-height: 190px;
    padding: 16px 16px 14px;
  }

  .availability-mini .card-kicker {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 7.6px;
    line-height: 1.15;
    letter-spacing: .08em;
    white-space: nowrap;
  }

  .availability-mini .card-kicker .ui-icon {
    width: 24px;
    height: 24px;
    padding: 5px;
    border-radius: 50%;
    border: 1px solid color-mix(in srgb,var(--accent) 22%,transparent);
    background: color-mix(in srgb,var(--accent) 8%,var(--surface));
    color: var(--accent);
  }

  .availability-hours {
    display: grid;
    align-content: center;
    gap: 1px;
    flex: 1;
    font-family: Georgia,"Times New Roman",serif;
    color: var(--text);
  }

  .availability-hours strong {
    font-weight: 400;
  }

  .availability-icons {
    display: grid;
  }

  .availability-action {
    border: 1px solid color-mix(in srgb,var(--accent) 20%,var(--line));
    background: color-mix(in srgb,var(--accent) 7%,var(--surface));
    color: var(--accent);
    transition: transform .18s ease,background .18s ease,border-color .18s ease;
  }

  .availability-action:hover,.availability-action:focus-visible {
    transform: translateY(-2px);
    background: color-mix(in srgb,var(--accent) 14%,var(--surface));
    border-color: color-mix(in srgb,var(--accent) 42%,var(--line));
  }

  .availability-vk span {
    font: 700 10px/1 Arial,sans-serif;
    letter-spacing: -.04em;
  }

  .availability-max span {
    font: 700 14px/1 Georgia,serif;
  }
}@media (max-width:390px) {
  .availability-mini {
    min-height: 176px;
    padding: 13px 12px 12px;
  }

  .availability-mini .card-kicker {
    font-size: 6.8px;
    gap: 5px;
    letter-spacing: .055em;
  }

  .availability-mini .card-kicker .ui-icon {
    width: 22px;
    height: 22px;
    padding: 5px;
  }

  .availability-hours {
    min-height: 62px;
    padding: 6px 0 3px;
  }

  .availability-hours strong {
    font-size: 20px;
  }

  .availability-hours span {
    font-size: 16px;
  }

  .availability-icons {
    grid-template-columns: repeat(4,31px);
    gap: 6px;
  }

  .availability-action {
    width: 31px;
    height: 31px;
  }

  .availability-action .ui-icon {
    font-size: 15px;
  }

  .availability-vk span {
    font-size: 9px;
  }

  .availability-max span {
    font-size: 13px;
  }
}.hero-main h1,.hero-main>p,.hero-main .pill,.hero-main .hero-cta-row {
  position: relative;
  z-index: 2;
}@media (max-width: 1024px) {
  .hero-main .decor-scale {
    width: 58px !important;
    height: 58px !important;
    right: 20px !important;
    top: 22px !important;
  }
}@media (max-width: 900px) {
  .hero-main .decor-scale {
    display: none !important;
  }
}.hero-main .decor-scale {
  color: #ead6cd !important;
  stroke-width: 1.9 !important;
  stroke-linecap: round;
  stroke-linejoin: round;
  fill: none;
}.hero-main .decor-scale {
  position: absolute !important;
  right: 30px !important;
  top: 24px !important;
  width: 78px !important;
  height: 78px !important;
  object-fit: contain !important;
  display: block;
  opacity: .82 !important;
  pointer-events: none;
  z-index: 1 !important;
  filter: none !important;
}@media (max-width:1024px) {
  .hero-main .decor-scale {
    width: 62px !important;
    height: 62px !important;
    right: 20px !important;
    top: 22px !important;
  }
}@media (max-width:900px) {
  .hero-main .decor-scale {
    display: none !important;
  }
}.mini-review {
  padding-right: 20px !important;
}.mini-review::after {
  display: none !important;
}.mini-review h3 {
  margin-bottom: 10px !important;
}.mini-review .link-arrow {
  margin-top: auto;
}.hero-photo .photo-badge {
  right: auto !important;
  width: max-content !important;
  max-width: calc(100% - 44px) !important;
  white-space: nowrap;
}@media (max-width:900px) {
  .mini-review {
    padding-right: 14px !important;
  }
}@media (max-width:900px) {
  .office-mini, .availability-mini {
    min-height: 148px !important;
    padding: 12px 12px 10px !important;
  }

  .office-mini {
    padding-right: 12px !important;
  }

  .office-mini .card-kicker, .availability-mini .card-kicker {
    font-size: 6.9px !important;
    line-height: 1.16 !important;
    letter-spacing: .055em !important;
  }

  .office-mini h3 {
    font-size: 14px !important;
    line-height: 1.04 !important;
    margin: 7px 0 3px !important;
  }

  .office-mini .link-arrow {
    margin-top: auto !important;
    font-size: 8px !important;
  }

  .availability-mini {
    justify-content: space-between !important;
  }

  .availability-hours {
    min-height: auto !important;
    padding: 4px 0 2px !important;
    margin: 2px 0 0 !important;
  }

  .availability-hours strong {
    font-size: 19px !important;
    line-height: 1 !important;
  }

  .availability-hours span {
    font-size: 15px !important;
    line-height: 1.06 !important;
  }

  .availability-icons {
    width: 100% !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 7px !important;
    justify-items: center !important;
    align-items: center !important;
    padding: 0 2px 0 0 !important;
    margin-top: 6px !important;
  }

  .availability-action {
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    display: grid !important;
    place-items: center !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .availability-action .ui-icon {
    font-size: 15px !important;
  }
}@media (max-width:380px) {
  .office-mini, .availability-mini {
    min-height: 144px !important;
  }

  .availability-hours strong {
    font-size: 18px !important;
  }

  .availability-hours span {
    font-size: 14px !important;
  }

  .availability-icons {
    gap: 6px !important;
  }

  .availability-action {
    width: 31px !important;
    height: 31px !important;
  }
}.privacy-card h3 {
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
  max-width: 100% !important;
}.privacy-card .no-break-word {
  white-space: nowrap;
}@media (max-width:390px) {
  .privacy-card h3 {
    font-size: 14.45px !important;
    line-height: 1.07 !important;
    letter-spacing: -.012em !important;
  }
}@media (max-width:900px) {
  .office-mini::after {
    right: -2px !important;
    bottom: 0 !important;
  }
}@media (max-width:380px) {
  .office-mini::after {
    height: 114px !important;
  }
}.office-mini {
  position: relative !important;
  overflow: hidden !important;
}.office-mini::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 48% !important;
  height: 100% !important;
  background-image: url("assets/office-main.webp") !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: 55% center !important;
  opacity: .62 !important;
  clip-path: polygon(0 100%, 86% 0, 100% 0, 100% 100%) !important;
  -webkit-clip-path: polygon(0 100%, 86% 0, 100% 0, 100% 100%) !important;
  border: 0 !important;
  border-radius: 0 !important;
  filter: none !important;
  transform: none !important;
  pointer-events: none !important;
  z-index: 1 !important;
}.office-mini > * {
  position: relative !important;
  z-index: 2 !important;
}@media (max-width:900px) {
  .office-mini::after {
    width: 52% !important;
    height: 100% !important;
    opacity: .58 !important;
    background-position: 57% center !important;
    clip-path: polygon(0 100%, 84% 0, 100% 0, 100% 100%) !important;
    -webkit-clip-path: polygon(0 100%, 84% 0, 100% 0, 100% 100%) !important;
  }
}@media (max-width:380px) {
  .office-mini::after {
    width: 54% !important;
    opacity: .56 !important;
  }
}@media (max-width:900px) {
  .privacy-card::after {
    right: 12px !important;
    top: 12px !important;
    width: 52px !important;
    height: 52px !important;
    opacity: .16 !important;
  }
}.privacy-card::after {
  right: 18px !important;
  top: auto !important;
  bottom: 18px !important;
  width: 74px !important;
  height: 74px !important;
  opacity: .17 !important;
}.stats-card {
  position: relative;
  overflow: hidden;
}.hero-grid .stats-card .card-kicker .ui-icon,
.stats-card .card-kicker .ui-icon {
  color: #f0b34f !important;
  background: rgba(255,255,255,.10) !important;
  border-color: rgba(240,179,79,.30) !important;
  fill: #f0b34f !important;
  stroke: #f0b34f !important;
}.hero-grid .stats-card .card-kicker .ui-icon use,
.stats-card .card-kicker .ui-icon use {
  fill: #f0b34f !important;
  stroke: #f0b34f !important;
}@media (max-width:900px) {
  .stats-card::after {
    display: none !important;
  }
}.stats-card::after {
  top: -82px !important;
  right: -6px !important;
  width: 236px !important;
  height: 236px !important;
  opacity: .23 !important;
}.mini-process {
  min-height: 218px !important;
  padding: 20px 22px 18px !important;
}.mini-process .card-kicker {
  margin: 0 0 6px !important;
}.mini-process .mini-steps {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: minmax(0,1fr) 24px minmax(0,1fr) 24px minmax(0,1fr) 24px minmax(0,1fr) !important;
  align-items: start !important;
  justify-items: stretch !important;
  gap: 8px !important;
  margin: 12px 0 10px !important;
}.mini-process .mini-steps span {
  display: grid !important;
  grid-template-rows: auto auto auto !important;
  justify-items: center !important;
  text-align: center !important;
  gap: 6px !important;
}.mini-process .mini-steps span i {
  width: 40px !important;
  height: 40px !important;
}.mini-process .mini-steps span i .ui-icon {
  font-size: 18px !important;
}.mini-process .mini-steps .step-label {
  display: block !important;
  font-size: 10px !important;
  line-height: 1.2 !important;
  color: var(--muted) !important;
  max-width: none !important;
}.mini-process .mini-steps .step-desc {
  display: block !important;
  margin: 0 !important;
  font-style: normal !important;
  font-size: 11.5px !important;
  line-height: 1.28 !important;
  color: color-mix(in srgb,var(--text) 78%, white 22%) !important;
  max-width: 126px !important;
}.mini-process .mini-steps b {
  display: grid !important;
  place-items: center !important;
  align-self: start !important;
  width: 24px !important;
  font-size: 15px !important;
  line-height: 40px !important;
  color: color-mix(in srgb,var(--muted) 62%, transparent) !important;
}.mini-process .link-arrow {
  margin-top: auto !important;
  display: inline-block !important;
  font-size: 11px !important;
}@media (max-width:900px) {
  .mini-process {
    padding: 14px 13px !important;
  }

  .mini-process .mini-steps span i .ui-icon {
    font-size: 14px !important;
  }

  .mini-process .mini-steps .step-label {
    letter-spacing: -.01em !important;
  }

  .mini-process .mini-steps .step-desc {
    display: none !important;
  }

  .mini-process .link-arrow {
    font-size: 8.8px !important;
    line-height: 1.1 !important;
  }
}@media (max-width:380px) {
  .mini-process {
    padding: 13px 12px !important;
  }

  .mini-process .mini-steps span {
    gap: 3px !important;
  }

  .mini-process .link-arrow {
    font-size: 8.4px !important;
  }
}@media (max-width:900px) {
  .mini-process .mini-steps {
    gap: 10px 10px !important;
    align-items: start !important;
    justify-items: center !important;
  }

  .mini-process .mini-steps span {
    gap: 4px !important;
    min-width: 0 !important;
  }

  .mini-process .mini-steps span i {
    width: 30px !important;
    height: 30px !important;
  }

  .mini-process .mini-steps .step-label {
    font-size: 8px !important;
    line-height: 1.08 !important;
    text-align: center !important;
  }
}@media (max-width:380px) {
  .mini-process .mini-steps {
    gap: 8px 8px !important;
    margin: 9px 0 7px !important;
  }

  .mini-process .mini-steps span i {
    width: 28px !important;
    height: 28px !important;
  }

  .mini-process .mini-steps .step-label {
    font-size: 7.6px !important;
  }
}.mobile-process-flow {
  display: none;
}@media (max-width:900px) {
  .mini-process {
    min-height: 190px !important;
  }

  .mini-process .mini-steps {
    position: relative !important;
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    grid-template-rows: repeat(2,auto) !important;
    column-gap: 18px !important;
    row-gap: 22px !important;
    margin: 10px 0 8px !important;
    padding: 0 4px !important;
  }

  .mini-process .mini-steps span {
    position: relative !important;
    z-index: 2 !important;
  }

  .mini-process .mini-steps b {
    display: none !important;
  }

  .mobile-process-flow {
    display: block !important;
    position: absolute !important;
    inset: -2px 0 -2px 0 !important;
    width: 100% !important;
    height: 100% !important;
    overflow: visible !important;
    color: color-mix(in srgb,var(--accent) 58%,var(--muted)) !important;
    z-index: 1 !important;
    pointer-events: none !important;
  }

  .mobile-process-flow path {
    fill: none;
    stroke: currentColor;
    stroke-width: 1.25;
    stroke-linecap: round;
    stroke-linejoin: round;
    vector-effect: non-scaling-stroke;
    opacity: .62;
  }

  .mobile-process-flow marker path {
    fill: currentColor;
    stroke: none;
    opacity: .9;
  }
}@media (max-width:380px) {
  .mini-process {
    min-height: 184px !important;
  }

  .mini-process .mini-steps {
    column-gap: 14px !important;
    row-gap: 20px !important;
  }
}.hero-social-links {
  display: none;
}@media (min-width:901px) {
  .hero-trust-row {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
  }

  .hero-social-links {
    display: flex;
    align-items: center;
    gap: 8px;
  }

  .hero-social-link {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: color-mix(in srgb,var(--surface) 96%,white);
    border: 1px solid color-mix(in srgb,var(--accent) 16%,var(--line));
    box-shadow: 0 1px 0 rgba(255,255,255,.6) inset;
    transition: transform .18s ease, border-color .18s ease, background .18s ease;
  }

  .hero-social-link:hover,.hero-social-link:focus-visible {
    transform: translateY(-2px);
    border-color: color-mix(in srgb,var(--accent) 34%,var(--line));
    background: color-mix(in srgb,var(--surface-2) 96%,white);
  }

  .hero-social-link img {
    display: block;
    max-width: 22px;
    max-height: 22px;
    object-fit: contain;
  }

  .hero-social-max img {
    max-width: 20px;
    max-height: 20px;
  }
}@media (max-width:900px) {
  .hero-social-links {
    display: none !important;
  }
}.availability-action img.social-logo {
  display: block;
  object-fit: contain;
}.availability-vk img.social-logo {
  width: 18px;
  height: 18px;
}.availability-max img.social-logo {
  width: 18px;
  height: 18px;
}.availability-vk,.availability-max {
  background: color-mix(in srgb,var(--surface) 96%,white) !important;
}@media (max-width:900px) {
  .availability-vk img.social-logo {
    width: 18px !important;
    height: 18px !important;
  }

  .availability-max img.social-logo {
    width: 18px !important;
    height: 18px !important;
  }
}.availability-vk,
.availability-max,
.hero-social-vk,
.hero-social-max {
  padding: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
}.availability-vk img.social-logo,
.availability-max img.social-logo,
.hero-social-vk img,
.hero-social-max img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  border-radius: 50% !important;
  display: block !important;
}@media (max-width:900px) {
  .availability-vk img.social-logo,
  .availability-max img.social-logo {
    width: 100% !important;
    height: 100% !important;
  }
}.mobile-phone-action {
  display: contents;
}@media (max-width:900px) {
  .hero-main .micro-trust .mobile-phone-action {
    display: grid !important;
    place-items: center !important;
    border-radius: 50% !important;
    text-decoration: none !important;
  }

  .hero-main .micro-trust .mobile-phone-action .ui-icon {
    margin: 0 !important;
    cursor: pointer !important;
  }

  .hero-main .micro-trust .mobile-phone-action:active {
    transform: scale(.96);
  }
}.hero-main .micro-trust .micro-trust-text {
  display: block;
}@media (max-width:900px) {
  .hero-main .micro-trust {
    align-items: center !important;
  }

  .hero-main .micro-trust .micro-trust-text {
    align-self: center !important;
    line-height: 1.28 !important;
    margin-top: 0 !important;
    min-width: 0 !important;
  }
}@media (max-width:390px) {
  .hero-main .micro-trust .micro-trust-text {
    line-height: 1.22 !important;
  }
}@media (max-width:900px) {
  .hero-main .micro-trust {
    grid-template-columns: 36px minmax(0,1fr) !important;
    gap: 10px !important;
    padding: 7px 10px !important;
  }

  .hero-main .micro-trust .mobile-phone-action {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    align-self: center !important;
    justify-self: start !important;
  }

  .hero-main .micro-trust .mobile-phone-action .ui-icon {
    width: 36px !important;
    height: 36px !important;
    padding: 9px !important;
  }

  .hero-main .micro-trust .micro-trust-text {
    padding-left: 1px !important;
    transform: translateY(0) !important;
  }
}@media (max-width:390px) {
  .hero-main .micro-trust {
    grid-template-columns: 32px minmax(0,1fr) !important;
    gap: 9px !important;
    padding: 6px 8px !important;
  }

  .hero-main .micro-trust .mobile-phone-action {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
  }

  .hero-main .micro-trust .mobile-phone-action .ui-icon {
    width: 32px !important;
    height: 32px !important;
    padding: 8px !important;
  }

  .hero-main .micro-trust .micro-trust-text {
    padding-left: 2px !important;
  }
}@media (max-width:900px) {
  .service-item {
    position: relative;
    align-items: center !important;
  }

  .service-arrow {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    justify-self: end !important;
    align-self: center !important;
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
    color: transparent !important;
    text-indent: -9999px !important;
    overflow: hidden !important;
  }

  .service-arrow::before {
    content: none !important;
  }

  .service-arrow::after {
    content: "⌄" !important;
    display: block !important;
    font: 22px/1 Georgia, serif !important;
    color: var(--text) !important;
    text-indent: 0 !important;
    transform: none !important;
  }

  .service-item.active .service-arrow::after {
    content: "⌃" !important;
  }
}@media (max-width:900px) {
  .service-item,
  .service-item:hover,
  .service-item:focus {
    color: var(--text) !important;
  }

  .service-item.active,
  .service-item.active:hover,
  .service-item.active:focus {
    color: var(--accent) !important;
  }

  .service-item:not(.active) .service-arrow::after,
  .service-item:not(.active):hover .service-arrow::after,
  .service-item:not(.active):focus .service-arrow::after {
    color: var(--text) !important;
  }

  .service-item.active .service-arrow::after {
    color: var(--accent) !important;
  }
}@media (hover:none) and (pointer:coarse) {
  .service-item:hover {
    color: var(--text) !important;
  }

  .service-item.active:hover {
    color: var(--accent) !important;
  }
}@media (min-width:901px) and (max-width:1020px) {
  .principles-grid {
    grid-template-columns: 1.14fr .86fr .86fr !important;
    grid-auto-rows: 196px !important;
    gap: 10px !important;
  }

  .principle-photo {
    grid-row: span 2 !important;
    min-height: 0 !important;
  }

  .principle-photo blockquote {
    left: 22px !important;
    right: 22px !important;
    bottom: 44px !important;
    font-size: 22px !important;
    line-height: 1.08 !important;
  }

  .principle-photo > span {
    left: 22px !important;
    bottom: 18px !important;
    font-size: 11px !important;
  }

  .principle {
    padding: 18px !important;
    overflow: hidden !important;
  }

  .principle .icon-disc {
    width: 38px !important;
    height: 38px !important;
    flex: 0 0 38px !important;
  }

  .principle h3 {
    font-size: 18px !important;
    line-height: 1.08 !important;
    margin: 10px 0 6px !important;
    overflow-wrap: anywhere;
  }

  .principle p {
    font-size: 11.4px !important;
    line-height: 1.34 !important;
    overflow-wrap: anywhere;
  }

  .principle-tall {
    grid-row: span 2 !important;
  }

  .principle-tall h3 {
    font-size: 20px !important;
    line-height: 1.08 !important;
  }

  .principle-tall p {
    font-size: 12px !important;
    line-height: 1.4 !important;
  }
}@media (max-width:1200px) {
  .roadmap {
    display: grid;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    margin-left: 0;
    border-left: 0;
    position: relative;
  }

  .roadmap:before {
    content: "";
    position: absolute;
    left: 19px;
    top: 30px;
    bottom: 30px;
    width: 1px;
    background: color-mix(in srgb,var(--accent) 40%,var(--line));
    z-index: 0;
  }

  .roadmap article {
    margin: 0 0 0 38px;
    min-height: 0;
    padding: 18px 20px;
    position: relative;
    z-index: 1;
  }

  .roadmap article>span {
    position: absolute;
    left: -38px;
    top: 18px;
    width: 34px;
    height: 34px;
    font-size: 15px;
  }

  .roadmap article i {
    width: 42px;
    height: 42px;
    margin: 0 0 12px;
  }

  .roadmap article i .ui-icon {
    font-size: 23px;
  }

  .roadmap article h3 {
    font-size: 24px;
    line-height: 1.12;
    margin: 0 0 8px;
  }

  .roadmap article p {
    font-size: 13px;
    line-height: 1.45;
    margin: 0;
  }

  .roadmap-arrow {
    font-size: 0 !important;
    height: 28px;
    margin-left: 38px;
    display: grid;
    place-items: center;
    align-self: stretch;
    transform: none !important;
  }

  .roadmap-arrow:after {
    content: "↓";
    font-size: 20px;
    color: var(--accent);
  }
}@media (max-width:900px) {
  .roadmap article {
    padding: 16px 18px;
  }

  .roadmap article h3 {
    font-size: 20px;
  }

  .roadmap article p {
    font-size: 11.5px;
  }

  .roadmap-arrow:after {
    content: "↓" !important;
    font-size: 18px;
  }
}.case-feature:after {
  display: none !important;
  content: none !important;
}@media (max-width:1100px) {
  #price .price-cards {
    grid-template-columns: 1fr !important;
  }

  #price .price-card {
    min-height: 430px !important;
  }

  #price .price-bottom {
    align-items: flex-start !important;
    flex-direction: column !important;
  }
}.review-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
}.review-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--muted);
}.dark .review-meta,.accent .review-meta {
  color: rgba(255,255,255,.72);
}.review-stars {
  color: #e9ad48;
  letter-spacing: .08em;
  font-size: 13px;
  white-space: nowrap;
}.review-card .quote {
  margin-top: 4px;
}.review-card footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
  margin-top: auto;
}.review-card footer a {
  font-size: 11px;
  color: var(--accent);
  font-weight: 700;
}.dark.review-card footer a {
  color: #efb08f;
}.accent.review-card footer a {
  color: #fff;
}@media (max-width:900px) {
  .review-card {
    min-height: 230px;
    padding: 22px;
  }

  .review-feature {
    min-height: 340px;
  }

  .review-card blockquote {
    font-size: clamp(21px,4.6vw,30px);
    margin: 18px 0 22px;
  }

  .review-meta {
    font-size: 10px;
  }
}@media (max-width:520px) {
  .review-card {
    min-height: 0;
  }

  .review-feature {
    min-height: 300px;
  }

  .review-card blockquote {
    font-size: 23px;
    line-height: 1.22;
    margin: 16px 0 22px;
  }
}@media (min-width: 901px) {
  #reviews .reviews-grid {
    grid-template-columns: minmax(0, 1.06fr) minmax(0, 0.94fr) minmax(0, 0.9fr) !important;
    gap: 16px;
    align-items: stretch;
  }

  #reviews .review-feature blockquote {
    margin: 18px 0 24px !important;
    font-size: clamp(26px, 2.15vw, 36px);
    line-height: 1.18;
  }

  #reviews .review-card:not(.review-feature) blockquote {
    font-size: clamp(16px, 1.55vw, 28px);
    line-height: 1.18;
    margin: 16px 0 20px;
  }

  #reviews .review-card {
    padding: 26px;
  }
}@media (min-width: 901px) {
  #reviews .review-feature {
    min-height: 420px !important;
  }

  #reviews .review-feature blockquote {
    margin-bottom: 18px !important;
  }
}.yandex-map-card {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate;
}.yandex-map-embed {
  position: absolute;
  inset: 0;
  overflow: hidden;
  background: var(--surface-2);
  z-index: 0;
}.yandex-map-embed>a {
  position: absolute;
  left: 0;
  color: #777;
  font-size: 11px;
  z-index: 0;
  opacity: .01;
  pointer-events: none;
}.yandex-map-embed>a:first-child {
  top: 0;
}.yandex-map-embed>a:nth-child(2) {
  top: 14px;
}.yandex-map-embed iframe {
  display: block;
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
  position: absolute;
  inset: 0;
}@media (max-width:900px) {
  .yandex-map-card {
    min-height: 330px !important;
  }
}.brand-mark.brand-logo {
  width: 48px !important;
  height: 48px !important;
  padding: 3px !important;
  border-radius: 50% !important;
  background: #faeee3 !important;
  border: 1px solid color-mix(in srgb,var(--accent) 24%,var(--line)) !important;
  overflow: hidden;
  flex: 0 0 48px;
}.brand-mark.brand-logo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}@media (max-width:900px) {
  .brand-mark.brand-logo {
    flex-basis: 42px;
    padding: 2px !important;
  }
}.brand .brand-copy {
  display: grid;
  min-width: 0;
}.brand-title-row {
  display: flex;
  align-items: baseline;
  gap: 9px;
  white-space: nowrap;
}.brand-city {
  font-size: 11px;
  line-height: 1;
  color: var(--muted);
  font-weight: 600;
  padding-left: 9px;
  border-left: 1px solid var(--line);
  letter-spacing: .02em;
}@media (max-width:900px) {
  .brand-city {
    font-size: 9px;
    padding-left: 6px;
  }
}@media (max-width:420px) {
  .brand-city {
    display: none;
  }
}@media (max-width:900px) {
  .header-inner {
    grid-template-columns: minmax(0,1fr) auto !important;
    gap: 8px !important;
    padding: 8px 9px !important;
  }

  .brand {
    min-width: 0 !important;
    gap: 8px !important;
    overflow: hidden;
  }

  .brand .brand-copy {
    min-width: 0 !important;
    overflow: hidden;
  }

  .brand-title-row {
    min-width: 0 !important;
    gap: 6px !important;
  }

  .brand strong {
    min-width: 0;
    font-size: 14px !important;
    line-height: 1.05;
    white-space: nowrap;
  }

  .brand small {
    font-size: 9px !important;
    line-height: 1.05;
    white-space: nowrap;
  }

  .header-actions {
    grid-column: 2 !important;
    justify-self: end !important;
    flex: 0 0 auto !important;
  }

  .theme-toggle,.menu-button {
    flex: 0 0 36px !important;
    width: 36px !important;
    height: 36px !important;
  }

  .brand-mark.brand-logo {
    width: 40px !important;
    height: 40px !important;
    flex: 0 0 40px !important;
  }
}@media (max-width:430px) {
  .brand-city {
    display: none !important;
  }

  .header-inner {
    gap: 6px !important;
    padding-left: 7px !important;
  }

  .brand {
    gap: 7px !important;
  }
}@media (max-width:370px) {
  .brand strong {
    font-size: 13px !important;
  }

  .brand small {
    font-size: 8.5px !important;
  }

  .brand-mark.brand-logo {
    width: 38px !important;
    height: 38px !important;
    flex-basis: 38px !important;
  }

  .theme-toggle,.menu-button {
    width: 34px !important;
    height: 34px !important;
    flex-basis: 34px !important;
  }
}@media (max-width:900px) {
  .header-inner {
    position: relative !important;
    display: block !important;
  }

  .brand {
    width: 100% !important;
    max-width: 100% !important;
  }

  .header-actions {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    width: auto !important;
    min-width: 0 !important;
    z-index: 3;
  }
}@media (max-width:1180px) {
  .header-inner {
    position: relative !important;
    display: block !important;
  }

  .brand {
    width: max-content !important;
    max-width: calc(100% - 8px) !important;
  }

  .header-actions {
    position: absolute !important;
    right: 12px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    width: auto !important;
    min-width: 0 !important;
    z-index: 4 !important;
  }
}@media (max-width:900px) {
  .header-actions {
    right: 8px !important;
    gap: 6px !important;
  }
}@media (max-width:370px) {
  .header-actions {
    right: 6px !important;
    gap: 5px !important;
  }
}.faq-side-cards {
  display: grid;
  gap: 14px;
  margin-top: 42px;
  max-width: 340px;
}.faq-side-cards .faq-help {
  margin-top: 0 !important;
  max-width: none !important;
  padding: 22px 24px !important;
  min-height: 0;
}.faq-side-cards .faq-help strong {
  margin-top: 0 !important;
  font-size: 23px;
  line-height: 1.12;
}.faq-side-cards .faq-help p {
  margin: 12px 0 18px;
  font-size: 15px;
  line-height: 1.45;
}.faq-side-cards .faq-help .outline-button {
  padding: 12px 16px;
}.faq-blog {
  background: linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--accent-soft) 42%,var(--surface)));
}@media (max-width:900px) {
  .faq-side-cards {
    margin-top: 24px;
    max-width: none;
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}@media (max-width:620px) {
  .faq-side-cards {
    grid-template-columns: 1fr;
  }
}@media (min-width:901px) {
  #faq .faq-layout {
    grid-template-columns: .45fr 1fr;
    grid-template-rows: auto auto;
    column-gap: 70px;
    row-gap: 0;
  }

  #faq .faq-intro {
    grid-column: 1;
    grid-row: 1;
  }

  #faq .faq-list {
    grid-column: 2;
    grid-row: 1 / span 2;
  }

  #faq .faq-side-cards {
    grid-column: 1;
    grid-row: 2;
    margin-top: 42px;
  }
}@media (max-width:900px) {
  #faq .faq-layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
  }

  #faq .faq-intro {
    order: 1;
  }

  #faq .faq-list {
    order: 2;
  }

  #faq .faq-side-cards {
    order: 3;
    margin-top: 8px;
  }
}.price-notice-icon {
  display: inline-grid;
  place-items: center;
  width: 20px;
  height: 20px;
  margin-right: 7px;
  border: 1px solid color-mix(in srgb,var(--accent) 55%,var(--line));
  border-radius: 50%;
  color: var(--accent);
  font: 700 13px/1 Arial,sans-serif;
  vertical-align: 1px;
}#contact .contact-copy::after {
  content: none !important;
  display: none !important;
}.micro-trust-call {
  text-decoration: none !important;
  color: var(--muted) !important;
  cursor: pointer;
}.micro-trust-call:hover,
.micro-trust-call:focus-visible {
  text-decoration: none !important;
}@media (max-width:900px) {
  .hero-main .micro-trust-call {
    cursor: pointer;
  }

  .hero-main .micro-trust-call:active {
    transform: scale(.985);
  }
}@media (max-width:900px) {
  .office-grid > .office-intro {
    order: 1;
  }

  .office-grid > .office-main-image {
    order: 2;
  }

  .office-grid > .office-thumb:nth-of-type(1) {
    order: 3;
  }

  .office-grid > .office-thumb:nth-of-type(2) {
    order: 4;
  }

  .office-grid > .map-card {
    order: 5;
  }

  .office-grid > .office-contact {
    order: 6;
  }
}@media (max-width:900px) {
  #office .office-grid > .office-intro {
    order: 1 !important;
  }

  #office .office-grid > .office-main-image {
    order: 2 !important;
  }

  #office .office-grid > .office-thumb {
    order: 3 !important;
  }

  #office .office-grid > .map-card {
    order: 4 !important;
  }

  #office .office-grid > .office-contact {
    order: 5 !important;
  }
}.footer-contact .footer-phone {
  display: inline-block;
  width: max-content;
  font-weight: 700;
  color: #f5ece4;
}.footer-social-links {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 6px;
}.footer-social-link {
  width: 42px;
  height: 42px;
  display: grid !important;
  place-items: center;
  border-radius: 50%;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.05);
  transition: transform .18s ease,border-color .18s ease;
}.footer-social-link:hover,
.footer-social-link:focus-visible {
  transform: translateY(-2px);
  border-color: rgba(255,255,255,.3);
}.footer-social-link img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  border-radius: 50%;
}@media (max-width:520px) {
  .footer-social-link {
    width: 40px;
    height: 40px;
  }
}.consult-format-note {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}.consult-format-note span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 13px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: var(--surface);
  color: var(--muted);
  font-size: 12px;
  line-height: 1.25;
}.consult-format-note b {
  color: var(--accent);
  white-space: nowrap;
}.consult-offer-badge {
  display: inline-flex;
  width: max-content;
  max-width: 100%;
  margin-bottom: 18px;
  padding: 7px 11px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.42);
  background: rgba(255,255,255,.14);
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}@media (max-width:900px) {
  #consultation .consult-offer {
    order: 99 !important;
  }

  .consult-format-note {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .consult-format-note span {
    border-radius: 16px;
    align-items: flex-start;
  }
}#contact .contact-quote {
  grid-column: 1 / -1 !important;
}.mini-review-proof {
  display: grid;
  gap: 9px;
  margin: 4px 0 10px;
}.mini-review-proof>span {
  color: var(--muted);
  font-size: 10.5px;
  line-height: 1.3;
}.mini-review-sources {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
}.mini-review-sources b {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 6px 10px;
  border: 1px solid color-mix(in srgb,var(--accent) 18%,var(--line));
  border-radius: 999px;
  background: color-mix(in srgb,var(--accent) 5%,var(--surface));
  color: var(--text);
  font: 700 10px/1 Inter,Segoe UI,Arial,sans-serif;
}@media (max-width:900px) {
  .mini-review-proof {
    gap: 7px;
    margin: 5px 0 8px;
  }

  .mini-review-proof>span {
    font-size: 8.8px;
  }

  .mini-review-sources {
    gap: 5px;
  }

  .mini-review-sources b {
    min-height: 26px;
    padding: 5px 8px;
    font-size: 8px;
  }
}@media (min-width:901px) {
  .hero-grid {
    grid-template-rows: clamp(330px,38vh,390px) 190px 182px;
  }

  .hero-grid .mini-review {
    padding-bottom: 24px !important;
  }

  .hero-grid .mini-review .link-arrow {
    margin-top: auto !important;
    margin-bottom: 0 !important;
  }
}@media (min-width:901px) and (max-width:1180px) {
  .hero-grid {
    grid-template-rows: 330px 188px 180px;
  }
}.form-hp {
  position: absolute !important;
  left: -10000px !important;
  top: auto !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}.contact-form .button:disabled {
  opacity: .68;
  cursor: wait;
  transform: none !important;
}@media (max-width: 900px) {
  .stats-card {
    padding: 15px 16px !important;
  }

  .stats-card .card-kicker {
    font-size: 8.6px !important;
    letter-spacing: .07em !important;
    gap: 6px !important;
  }

  .stats-card .card-kicker .ui-icon {
    width: 26px !important;
    height: 26px !important;
    padding: 6px !important;
  }
}.theme-toggle {
  position: relative !important;
  width: 64px !important;
  min-width: 64px !important;
  flex: 0 0 64px !important;
  height: 34px !important;
  padding: 0 !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  border: 1px solid color-mix(in srgb,var(--accent) 42%,var(--line)) !important;
  background: linear-gradient(135deg,var(--accent),var(--accent-2)) !important;
  color: #fff7f1 !important;
  box-shadow: inset 0 1px 2px rgba(255,255,255,.18),0 3px 10px rgba(60,35,25,.08) !important;
  transition: background .28s ease,border-color .28s ease,box-shadow .28s ease !important;
}.theme-toggle::before {
  content: "";
  position: absolute;
  z-index: 1;
  left: 2px;
  top: 2px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #fffaf4;
  box-shadow: 0 2px 7px rgba(45,30,22,.22);
  transform: translateX(0);
  transition: transform .3s cubic-bezier(.2,.75,.25,1),background .28s ease,box-shadow .28s ease;
}.theme-toggle .theme-sun,
.theme-toggle .theme-moon {
  position: absolute !important;
  z-index: 2;
  inset: auto !important;
  top: 0 !important;
  width: 32px !important;
  height: 32px !important;
  display: grid !important;
  place-items: center !important;
  opacity: 1 !important;
  pointer-events: none;
  font-family: Arial,"Segoe UI Symbol",sans-serif !important;
  font-size: 16px !important;
  line-height: 1 !important;
  transition: color .28s ease,opacity .28s ease !important;
}.theme-toggle .theme-sun {
  left: 0 !important;
  color: #b45e3f !important;
}.theme-toggle .theme-moon {
  right: 0 !important;
  color: #fff5ef !important;
  font-size: 17px !important;
}.theme-toggle:hover {
  filter: none !important;
  box-shadow: inset 0 1px 2px rgba(255,255,255,.2),0 5px 14px rgba(60,35,25,.13) !important;
}.theme-toggle:focus-visible {
  outline: 2px solid color-mix(in srgb,var(--accent) 58%,white);
  outline-offset: 3px;
}html[data-theme="dark"] .theme-toggle {
  background: linear-gradient(135deg,#241c2e,#39284c) !important;
  border-color: rgba(205,165,226,.25) !important;
  box-shadow: inset 0 1px 2px rgba(255,255,255,.07),0 3px 10px rgba(0,0,0,.2) !important;
}html[data-theme="dark"] .theme-toggle::before {
  transform: translateX(30px);
  background: #4b3760;
  box-shadow: 0 2px 8px rgba(0,0,0,.3),inset 0 0 0 1px rgba(255,255,255,.05);
}html[data-theme="dark"] .theme-toggle .theme-sun {
  color: #e2a24e !important;
}html[data-theme="dark"] .theme-toggle .theme-moon {
  color: #f2dfef !important;
}@media (max-width:1180px) {
  .header-inner {
    padding-right: 128px !important;
  }

  .theme-toggle {
    width: 64px !important;
    min-width: 64px !important;
    flex-basis: 64px !important;
    height: 34px !important;
  }

  .menu-button {
    width: 36px !important;
    height: 36px !important;
    flex: 0 0 36px !important;
  }
}@media (max-width:900px) {
  .header-inner {
    padding-right: 120px !important;
  }
}@media (max-width:430px) {
  .header-inner {
    padding-right: 114px !important;
  }

  .theme-toggle {
    width: 60px !important;
    min-width: 60px !important;
    flex-basis: 60px !important;
    height: 32px !important;
  }

  .theme-toggle::before {
    width: 26px;
    height: 26px;
  }

  .theme-toggle .theme-sun,.theme-toggle .theme-moon {
    width: 30px !important;
    height: 30px !important;
    font-size: 15px !important;
  }

  html[data-theme="dark"] .theme-toggle::before {
    transform: translateX(28px);
  }

  .menu-button {
    width: 34px !important;
    height: 34px !important;
    flex-basis: 34px !important;
  }
}@media (max-width:370px) {
  .header-inner {
    padding-right: 108px !important;
  }

  .theme-toggle {
    width: 56px !important;
    min-width: 56px !important;
    flex-basis: 56px !important;
    height: 30px !important;
  }

  .theme-toggle::before {
    width: 24px;
    height: 24px;
  }

  .theme-toggle .theme-sun,.theme-toggle .theme-moon {
    width: 28px !important;
    height: 28px !important;
    font-size: 14px !important;
  }

  html[data-theme="dark"] .theme-toggle::before {
    transform: translateX(26px);
  }

  .menu-button {
    width: 32px !important;
    height: 32px !important;
    flex-basis: 32px !important;
  }
}.mini-process::after {
  display: none !important;
  content: none !important;
  background-image: none !important;
}@media (min-width:901px) {
  .privacy-card::after {
    display: block !important;
    content: "" !important;
    right: 7px !important;
    top: auto !important;
    bottom: 7px !important;
    width: 74px !important;
    height: 74px !important;
    opacity: .72 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 96' fill='none' stroke='%23171412' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='28' y='40' width='40' height='34' rx='8'/%3E%3Cpath d='M36 40V29c0-10 5-17 12-17s12 7 12 17v11'/%3E%3Ccircle cx='48' cy='56' r='2'/%3E%3Cpath d='M48 58v7'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
  }
}@media (max-width:900px) {
  .privacy-card::after {
    display: none !important;
  }
}.service-item {
  grid-template-columns: 46px 46px minmax(0,1fr) 28px !important;
  gap: 10px !important;
}.service-item-icon {
  width: 42px;
  height: 42px;
  object-fit: cover;
  border-radius: 50%;
  display: block;
  box-shadow: 0 5px 14px rgba(68,39,24,.08);
}.service-preview-image {
  width: 66px !important;
  height: 66px !important;
  padding: 0 !important;
  background: transparent !important;
  overflow: hidden;
  box-shadow: 0 8px 22px rgba(68,39,24,.08);
}.service-preview-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
  display: block;
}.principle .principle-custom-icon img {
  display: block;
}.roadmap article .process-custom-icon {
  width: 58px !important;
  height: 58px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  background: transparent !important;
  overflow: hidden;
  box-shadow: 0 7px 20px rgba(68,39,24,.08);
}.roadmap article .process-custom-icon img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: inherit;
}@media (max-width:900px) {
  .service-item {
    grid-template-columns: 34px 40px minmax(0,1fr) 24px !important;
    gap: 8px !important;
  }

  .service-item-icon {
    width: 36px;
    height: 36px;
  }

  .service-preview-image {
    width: 58px !important;
    height: 58px !important;
  }

  .roadmap article .process-custom-icon {
    width: 48px !important;
    height: 48px !important;
    margin: 0 0 10px !important;
  }
}@media (max-width:520px) {
  .service-item {
    grid-template-columns: 30px 36px minmax(0,1fr) 22px !important;
  }

  .service-item-icon {
    width: 34px;
    height: 34px;
  }
}.mini-process .mini-steps span i {
  overflow: hidden !important;
  padding: 0 !important;
  background: transparent !important;
  border-radius: 14px !important;
  box-shadow: 0 8px 18px rgba(68,39,24,.10), inset 0 0 0 1px color-mix(in srgb,var(--accent) 10%,transparent) !important;
}.mini-process .mini-steps span i .mini-step-icon {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: inherit !important;
}.mini-process .mini-steps span i .ui-icon {
  display: none !important;
}@media (max-width:900px) {
  .mini-process .mini-steps span i {
    border-radius: 12px !important;
  }
}.principle .principle-custom-icon {
  width: 56px !important;
  height: 56px !important;
}@media (max-width:900px) {
  .principle .principle-custom-icon {
    width: 50px !important;
    height: 50px !important;
    border-radius: 14px !important;
  }
}@media (max-width:520px) {
  .principle .principle-custom-icon {
    width: 46px !important;
    height: 46px !important;
    border-radius: 13px !important;
  }
}.form-sensitive-note,
.form-policy-note {
  margin: 0;
  color: #b9aaa1;
  font-size: 11px;
  line-height: 1.45;
}.form-sensitive-note {
  padding: 10px 12px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 12px;
  background: rgba(255,255,255,.035);
}.form-policy-note a,.personal-data-consent a {
  color: #f0a07a;
  text-decoration: underline;
  text-underline-offset: 3px;
}.personal-data-consent {
  display: grid !important;
  grid-template-columns: 20px 1fr;
  gap: 10px;
  align-items: start;
  margin: 2px 0 0;
  cursor: pointer;
}.personal-data-consent input {
  width: 18px !important;
  height: 18px !important;
  margin: 2px 0 0;
  accent-color: var(--accent);
  padding: 0 !important;
  min-height: 0 !important;
}.personal-data-consent span {
  font-size: 12px;
  line-height: 1.45;
  color: #eadfd7;
}.contact-form button[type="submit"]:disabled {
  opacity: .65;
  cursor: wait;
  transform: none;
}.footer-text-button {
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
  padding: 0;
  cursor: pointer;
  text-decoration: none;
}.footer-text-button:hover {
  color: var(--accent);
}.cookie-banner {
  position: fixed;
  left: 24px;
  right: 24px;
  bottom: 24px;
  z-index: 9999;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 22px;
  align-items: center;
  max-width: 1180px;
  margin-inline: auto;
  padding: 20px 22px;
  border: 1px solid color-mix(in srgb,var(--accent) 28%,var(--line));
  border-radius: 22px;
  background: color-mix(in srgb,var(--surface) 96%,transparent);
  box-shadow: 0 22px 70px rgba(31,21,16,.22);
  backdrop-filter: blur(18px);
  opacity: 0;
  visibility: hidden;
  transform: translateY(18px);
  transition: .24s ease;
}.cookie-banner.visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}.cookie-banner-copy strong {
  display: block;
  font: 24px Georgia,serif;
  margin-bottom: 4px;
}.cookie-banner-copy p {
  margin: 0;
  max-width: 760px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}.cookie-banner-copy a {
  color: var(--accent);
  font-weight: 700;
}.cookie-banner-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  white-space: nowrap;
}.cookie-banner-actions .outline-button {
  width: auto;
  padding: 12px 17px;
}.cookie-banner-actions .button {
  padding: 12px 17px;
}.external-map-consent {
  height: 100%;
  min-height: 300px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 10px;
  padding: 34px;
  background: linear-gradient(145deg,var(--surface-2),var(--surface));
  color: var(--text);
}.external-map-consent strong {
  font: 25px Georgia,serif;
}.external-map-consent p {
  max-width: 470px;
  margin: 0;
  color: var(--muted);
  font-size: 13px;
}.external-map-consent .outline-button {
  width: auto;
  margin-top: 6px;
}.consent-map-frame[hidden] {
  display: none !important;
}.legal-page {
  padding: 32px 0 100px;
}.legal-topbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  margin-bottom: 42px;
}.legal-home-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--accent);
  font-weight: 800;
}.legal-hero {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(280px,.42fr);
  gap: 18px;
  margin-bottom: 28px;
}.legal-hero-copy,.legal-operator-card,.legal-toc,.legal-content {
  border: 1px solid var(--line);
  background: var(--surface);
  border-radius: 28px;
  box-shadow: 0 8px 26px rgba(60,40,30,.035);
}.legal-hero-copy {
  padding: 38px;
}.legal-eyebrow {
  display: inline-block;
  color: var(--accent);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
  margin-bottom: 15px;
}.legal-hero h1 {
  font: clamp(42px,5.3vw,76px)/.98 Georgia,serif;
  letter-spacing: -.045em;
  margin: 0 0 18px;
}.legal-hero-copy>p {
  max-width: 780px;
  color: var(--muted);
  font-size: 16px;
  margin: 0;
}.legal-operator-card {
  padding: 28px;
  background: linear-gradient(145deg,var(--dark),var(--dark-2));
  color: var(--dark-text);
}.legal-operator-card>span {
  display: block;
  color: #dba184;
  text-transform: uppercase;
  letter-spacing: .13em;
  font-size: 10px;
  font-weight: 800;
  margin-bottom: 14px;
}.legal-operator-card strong {
  display: block;
  font: 26px Georgia,serif;
  margin-bottom: 16px;
}.legal-operator-card dl {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 8px 14px;
  margin: 0;
  font-size: 12px;
}.legal-operator-card dt {
  color: #bcaea6;
}.legal-operator-card dd {
  margin: 0;
}.legal-operator-card a {
  color: #f3b18f;
}.legal-layout {
  display: grid;
  grid-template-columns: 310px minmax(0,1fr);
  gap: 20px;
  align-items: start;
}.legal-toc {
  position: sticky;
  top: 20px;
  padding: 24px;
}.legal-toc strong {
  display: block;
  font: 23px Georgia,serif;
  margin-bottom: 14px;
}.legal-toc nav {
  display: grid;
  gap: 2px;
}.legal-toc a {
  display: block;
  padding: 8px 10px;
  border-radius: 10px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
}.legal-toc a:hover {
  background: var(--surface-2);
  color: var(--accent);
}.legal-content {
  padding: 40px 44px;
  min-width: 0;
}.legal-content section {
  scroll-margin-top: 24px;
  padding-bottom: 30px;
  margin-bottom: 30px;
  border-bottom: 1px solid var(--line);
}.legal-content section:last-child {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}.legal-content h2 {
  font: 32px/1.08 Georgia,serif;
  margin: 0 0 16px;
  letter-spacing: -.02em;
}.legal-content h3 {
  font: 22px Georgia,serif;
  margin: 24px 0 10px;
}.legal-content p,.legal-content li {
  color: var(--muted);
  font-size: 14px;
  line-height: 1.67;
}.legal-content ul,.legal-content ol {
  padding-left: 22px;
}.legal-content a {
  color: var(--accent);
  text-decoration: underline;
  text-underline-offset: 3px;
}.legal-callout {
  padding: 18px 20px;
  border: 1px solid color-mix(in srgb,var(--accent) 40%,var(--line));
  border-radius: 17px;
  background: color-mix(in srgb,var(--accent-soft) 55%,var(--surface));
  margin: 18px 0;
}.legal-callout strong {
  color: var(--text);
}.legal-table-wrap {
  overflow-x: auto;
  margin: 18px 0;
  border: 1px solid var(--line);
  border-radius: 18px;
}.legal-data-table {
  width: 100%;
  min-width: 850px;
  border-collapse: collapse;
  background: var(--surface);
}.legal-data-table th,.legal-data-table td {
  padding: 14px 15px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--line);
  border-right: 1px solid var(--line);
  font-size: 12px;
  line-height: 1.5;
}.legal-data-table th {
  background: var(--surface-2);
  font-weight: 800;
  color: var(--text);
}.legal-data-table td {
  color: var(--muted);
}.legal-data-table tr:last-child td {
  border-bottom: 0;
}.legal-data-table th:last-child,.legal-data-table td:last-child {
  border-right: 0;
}.legal-bottom-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-top: 24px;
  padding-top: 20px;
}.legal-mini-footer {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 24px;
  align-items: center;
  justify-content: space-between;
  margin-top: 34px;
  padding: 22px 0;
  border-top: 1px solid var(--line);
  font-size: 12px;
  color: var(--muted);
}.legal-mini-footer div {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}.legal-mini-footer a,.legal-mini-footer button {
  color: inherit;
}.legal-mini-footer a:hover,.legal-mini-footer button:hover {
  color: var(--accent);
}.consent-summary {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 12px;
  margin: 20px 0;
}.consent-summary>div {
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--surface-2);
}.consent-summary small {
  display: block;
  color: var(--accent);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
  margin-bottom: 6px;
}.consent-summary strong {
  font-size: 14px;
}@media (max-width:900px) {
  .cookie-banner {
    left: 12px;
    right: 12px;
    bottom: 12px;
    grid-template-columns: 1fr;
    padding: 17px;
    border-radius: 18px;
    gap: 14px;
  }

  .cookie-banner-copy strong {
    font-size: 21px;
  }

  .cookie-banner-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    white-space: normal;
  }

  .cookie-banner-actions .button,.cookie-banner-actions .outline-button {
    width: 100%;
    font-size: 12px;
    padding: 12px 10px;
  }

  .legal-page {
    padding-top: 18px;
  }

  .legal-topbar {
    margin-bottom: 22px;
  }

  .legal-hero {
    grid-template-columns: 1fr;
  }

  .legal-hero-copy {
    padding: 26px;
  }

  .legal-operator-card {
    padding: 24px;
  }

  .legal-layout {
    grid-template-columns: 1fr;
  }

  .legal-toc {
    position: static;
    padding: 20px;
  }

  .legal-toc nav {
    grid-template-columns: 1fr 1fr;
  }

  .legal-content {
    padding: 27px 22px;
  }

  .legal-content h2 {
    font-size: 27px;
  }

  .consent-summary {
    grid-template-columns: 1fr;
  }

  .legal-bottom-actions {
    align-items: flex-start;
    flex-direction: column;
  }
}@media (max-width:520px) {
  .cookie-banner-actions {
    grid-template-columns: 1fr;
  }

  .legal-toc nav {
    grid-template-columns: 1fr;
  }

  .legal-hero h1 {
    font-size: 40px;
  }

  .legal-operator-card dl {
    grid-template-columns: 1fr;
  }

  .legal-operator-card dt {
    margin-top: 6px;
  }

  .legal-content {
    padding: 23px 17px;
  }

  .legal-content p,.legal-content li {
    font-size: 13px;
  }

  .external-map-consent {
    min-height: 280px;
    padding: 25px 18px;
  }
}.legal-content a.button,
.legal-content a.button:visited {
  color: #fff !important;
  text-decoration: none !important;
  text-shadow: 0 1px 1px rgba(55,30,20,.16);
}.legal-content a.button:hover {
  color: #fff !important;
}@media (min-width:1181px) {
  #office .yandex-map-card .external-map-consent {
    min-height: 0 !important;
    height: 100% !important;
    padding: 18px 24px 24px !important;
    gap: 7px !important;
    justify-content: center !important;
  }

  #office .yandex-map-card .external-map-consent strong {
    font-size: 22px !important;
    line-height: 1.12;
  }

  #office .yandex-map-card .external-map-consent p {
    font-size: 12px !important;
    line-height: 1.45;
  }

  #office .yandex-map-card .external-map-consent .outline-button {
    margin-top: 2px !important;
  }
}#office .office-address {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-top: auto;
  padding-top: 18px;
}#office .office-address .ui-icon {
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  padding: 8px;
  border-radius: 50%;
  background: color-mix(in srgb,var(--accent) 11%,var(--surface));
  color: var(--accent);
}#office .office-address>div {
  display: grid;
  gap: 1px;
}#office .office-address span {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: var(--muted);
  font-weight: 700;
}#office .office-address strong {
  font: 19px Georgia,"Times New Roman",serif;
  color: var(--text);
}.footer-address-line {
  display: flex;
  align-items: center;
  gap: 7px;
  color: #d0c1b7 !important;
  margin: 9px 0 3px !important;
}.footer-address-line .ui-icon {
  width: 16px;
  height: 16px;
  color: #d88968;
  flex: 0 0 16px;
}@media (max-width:900px) {
  #office .office-address {
    margin-top: 18px;
    padding-top: 0;
  }

  #office .office-address strong {
    font-size: 18px;
  }
}.hero-main h1 {
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}@media (max-width:430px) {
  .hero-main h1 {
    font-size: clamp(33px,9vw,39px) !important;
    line-height: 1.015 !important;
    max-width: 84% !important;
    letter-spacing: -.045em !important;
  }
}@media (max-width:350px) {
  .hero-main h1 {
    font-size: 31px !important;
    max-width: 90% !important;
  }
}.trust-card {
  display: flex;
  flex-direction: column;
  gap: 12px;
}.trust-card .card-kicker {
  position: relative;
  z-index: 2;
}.trust-card-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  grid-template-rows: repeat(2,minmax(0,1fr));
  flex: 1;
  min-height: 0;
  gap: 10px 18px;
  align-content: center;
}.trust-card-item {
  min-width: 0;
  min-height: 0;
  padding: 5px 0;
  display: grid;
  grid-template-columns: 58px minmax(0,1fr);
  align-items: center;
  column-gap: 13px;
}.trust-card-icon {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
}.trust-card-icon img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter: drop-shadow(0 5px 8px rgba(0,0,0,.18));
}.trust-card-item strong {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
  font: 18px/1.08 Georgia,"Times New Roman",serif;
  font-weight: 400;
  color: #fff;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}.trust-card-item strong span {
  display: block;
  white-space: nowrap;
}@media (min-width:901px) and (max-width:1180px) {
  .trust-card {
    gap: 9px;
  }

  .trust-card-grid {
    gap: 8px 14px;
  }

  .trust-card-item {
    grid-template-columns: 48px minmax(0,1fr);
    column-gap: 10px;
  }

  .trust-card-icon {
    width: 48px;
    height: 48px;
  }

  .trust-card-item strong {
    font-size: 16px;
  }
}@media (max-width:900px) {
  .trust-card {
    padding: 15px 16px !important;
    gap: 10px !important;
  }

  .trust-card-grid {
    grid-template-columns: 1fr !important;
    grid-template-rows: repeat(4,minmax(0,1fr));
    gap: 4px;
  }

  .trust-card-item {
    grid-template-columns: 34px minmax(0,1fr);
    column-gap: 8px;
    padding: 5px 0 !important;
    align-items: center !important;
  }

  .trust-card-icon {
    width: 34px;
    height: 34px;
  }

  .trust-card-item strong {
    font-size: 11px;
    line-height: 1.1;
    letter-spacing: 0;
    gap: 0;
  }
}@media (max-width:390px) {
  .trust-card {
    padding: 13px !important;
  }

  .trust-card-item {
    grid-template-columns: 32px minmax(0,1fr);
    column-gap: 7px;
    padding: 4px 0 !important;
  }

  .trust-card-icon {
    width: 32px;
    height: 32px;
  }

  .trust-card-item strong {
    font-size: 10.5px;
  }
}@media (max-width:330px) {
  .trust-card-item strong {
    font-size: 12px;
  }
}.principle .principle-custom-icon {
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}.principle .principle-custom-icon img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  border-radius: 0 !important;
  filter: none !important;
}.dark.principle .principle-custom-icon {
  box-shadow: none !important;
}@media (min-width:901px) {
  .hero-photo::before {
    position: absolute;
    z-index: 0;
    pointer-events: none;
  }
}@media (min-width:901px) {
  .hero-photo::before {
    inset: -14px !important;
  }

  .hero-photo > img {
    transform-origin: center 34% !important;
  }
}@media (min-width:901px) {
  .hero-photo::before {
    content: none !important;
    display: none !important;
    background: none !important;
    filter: none !important;
    transform: none !important;
  }

  .hero-photo {
    background: transparent !important;
  }

  .hero-photo > img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: none !important;
    filter: none !important;
    z-index: 1 !important;
  }
}.principle-photo > picture {
  display: block;
  width: 100%;
  height: 100%;
}.principle-photo > picture > img {
  width: 100%;
  height: 100%;
}.office-gallery-item {
  cursor: zoom-in;
}.office-gallery-item:focus-visible {
  outline: 3px solid color-mix(in srgb,var(--accent) 72%,white);
  outline-offset: 3px;
}.office-gallery-bottom {
  margin-top: 14px;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 22px;
  padding: 18px 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  color: var(--muted);
}.office-gallery-bottom button {
  appearance: none;
  border: 0;
  padding: 0;
  background: transparent;
  color: var(--accent);
  font: inherit;
  font-weight: 700;
  cursor: pointer;
  white-space: nowrap;
}.office-gallery-bottom button:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
}body.office-lightbox-open {
  overflow: hidden;
}.office-lightbox[hidden] {
  display: none !important;
}.office-lightbox {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: grid;
  place-items: center;
  padding: 28px;
}.office-lightbox-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(18,13,11,.90);
  backdrop-filter: blur(8px);
}.office-lightbox-dialog {
  position: relative;
  z-index: 1;
  grid-template-columns: 64px minmax(0,1fr) 64px;
  align-items: center;
  gap: 18px;
}.office-lightbox-figure {
  min-width: 0;
  min-height: 0;
  grid-template-rows: minmax(0,1fr) auto;
}.office-lightbox-figure img {
  min-height: 0;
  user-select: none;
  -webkit-user-drag: none;
}.office-lightbox-figure figcaption {
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  color: #f7eee7;
  border-top: 1px solid rgba(255,255,255,.10);
  font-size: 14px;
}.office-lightbox-counter {
  white-space: nowrap;
}.office-lightbox-arrow,
.office-lightbox-close {
  appearance: none;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(39,29,24,.78);
  color: #fff;
  cursor: pointer;
  display: grid;
  place-items: center;
  box-shadow: 0 10px 28px rgba(0,0,0,.22);
  transition: background .18s ease,transform .18s ease,border-color .18s ease;
}.office-lightbox-arrow {
  font: 42px/1 Georgia,"Times New Roman",serif;
}.office-lightbox-arrow:hover,
.office-lightbox-close:hover {
  background: var(--accent);
  border-color: var(--accent);
  transform: scale(1.04);
}.office-lightbox-close {
  line-height: 1;
}.office-lightbox-prev {
  grid-column: 1;
}.office-lightbox-figure {
  grid-column: 2;
}.office-lightbox-next {
  grid-column: 3;
}@media (max-width:900px) {
  .office-gallery-bottom {
    align-items: flex-start;
    flex-direction: column;
    padding: 16px 18px;
    gap: 9px;
  }

  .office-gallery-bottom button {
    white-space: normal;
    text-align: left;
  }

  .office-lightbox {
    padding: 12px;
  }

  .office-lightbox-dialog {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .office-lightbox-figure {
    grid-column: 1;
    grid-row: 1;
    height: 100%;
  }

  .office-lightbox-figure figcaption {
    padding: 13px 15px;
    font-size: 12.5px;
  }

  .office-lightbox-arrow {
    position: absolute;
    z-index: 4;
    top: 50%;
    transform: translateY(-50%);
  }

  .office-lightbox-arrow:hover {
    transform: translateY(-50%);
  }
}@media (max-width:520px) {
  .office-lightbox-figure figcaption {
    align-items: flex-start;
    flex-direction: column;
    gap: 3px;
    padding-right: 60px;
  }
}.office-lightbox-dialog {
  width: min(1240px,calc(100vw - 64px)) !important;
  height: min(860px,calc(100vh - 56px)) !important;
  display: block !important;
}.office-lightbox-stage {
  position: relative;
  width: 100%;
  height: 100%;
}.office-lightbox-figure {
  position: relative !important;
  width: 100%;
  height: 100% !important;
  margin: 0 !important;
  display: block !important;
  overflow: hidden;
  border-radius: 26px;
  background: #17120f;
  border: 1px solid rgba(255,255,255,.13);
  box-shadow: 0 28px 80px rgba(0,0,0,.42);
}.office-lightbox-figure img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  background: #17120f;
}.office-lightbox-figure figcaption {
  position: absolute !important;
  left: 50% !important;
  bottom: 16px !important;
  transform: translateX(-50%);
  display: block !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  pointer-events: none;
}.office-lightbox-counter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  color: #fff !important;
  border: 1px solid rgba(255,255,255,.18);
  backdrop-filter: blur(8px);
  font-weight: 700;
  letter-spacing: .04em;
}.office-lightbox-close {
  position: absolute !important;
  z-index: 7 !important;
  top: 18px !important;
  right: 18px !important;
  border-radius: 50% !important;
  color: #fff !important;
  font: 700 34px/1 Arial,sans-serif !important;
}.office-lightbox-close:hover,
.office-lightbox-close:focus-visible {
  transform: scale(1.07) !important;
  filter: brightness(1.08);
  outline: none;
}.office-lightbox-arrow {
  position: absolute !important;
  z-index: 6 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  border-radius: 50% !important;
  border: 1px solid rgba(255,255,255,.28) !important;
  backdrop-filter: blur(7px);
}.office-lightbox-arrow:hover,
.office-lightbox-arrow:focus-visible {
  background: var(--accent) !important;
  border-color: rgba(255,255,255,.75) !important;
  transform: translateY(-50%) scale(1.06) !important;
  outline: none;
}.office-lightbox-prev {
  left: 18px !important;
}.office-lightbox-next {
  right: 18px !important;
}@media (max-width:900px) {
  .office-lightbox-dialog {
    width: 100% !important;
    height: min(760px,calc(100vh - 24px)) !important;
  }

  .office-lightbox-figure {
    border-radius: 20px !important;
  }

  .office-lightbox-close {
    top: 10px !important;
    right: 10px !important;
  }

  .office-lightbox-figure figcaption {
    bottom: 12px !important;
  }
}.office-lightbox-figure {
  isolation: isolate;
}.office-lightbox-figure::before,
.office-lightbox-figure::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  z-index: 3;
  pointer-events: none;
}.office-lightbox-figure::before {
  top: 0;
  height: 110px;
  background: linear-gradient(180deg,rgba(10,7,6,.42),transparent);
}.office-lightbox-figure::after {
  bottom: 0;
  height: 150px;
  background: linear-gradient(0deg,rgba(10,7,6,.56),transparent);
}.office-lightbox-viewport {
  position: absolute;
  inset: 0;
  overflow: hidden;
  background: #17120f;
  touch-action: pan-y;
}.office-lightbox-image {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  background: #17120f;
  opacity: 1;
  transform: translate3d(100%,0,0);
  will-change: transform;
  user-select: none;
  -webkit-user-drag: none;
}.office-lightbox-image.is-active {
  transform: translate3d(0,0,0);
}.office-lightbox-thumbs {
  position: absolute;
  z-index: 5;
  left: 50%;
  bottom: 58px;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 8px;
  max-width: min(72%,760px);
  padding: 7px;
  overflow-x: auto;
  scrollbar-width: none;
  border-radius: 16px;
  background: rgba(23,17,14,.52);
  border: 1px solid rgba(255,255,255,.12);
  backdrop-filter: blur(10px);
  box-shadow: 0 8px 26px rgba(0,0,0,.18);
}.office-lightbox-thumbs::-webkit-scrollbar {
  display: none;
}.office-lightbox-thumb {
  appearance: none;
  flex: 0 0 54px;
  width: 54px;
  height: 40px;
  padding: 0;
  border-radius: 9px;
  overflow: hidden;
  border: 2px solid transparent;
  background: #2b211d;
  opacity: .58;
  cursor: pointer;
  transition: opacity .18s ease,border-color .18s ease,transform .18s ease;
}.office-lightbox-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}.office-lightbox-thumb:hover,
.office-lightbox-thumb:focus-visible {
  opacity: .9;
  transform: translateY(-1px);
  outline: none;
}.office-lightbox-thumb.is-active {
  opacity: 1;
  border-color: #e3926f;
}.office-lightbox-counter {
  position: relative;
  z-index: 6;
  min-width: 64px !important;
  min-height: 30px !important;
  padding: 5px 12px !important;
  background: rgba(23,17,14,.64) !important;
  border-color: rgba(255,255,255,.14) !important;
  box-shadow: none !important;
  font-size: 12px !important;
}.office-lightbox-arrow {
  width: 54px !important;
  height: 54px !important;
  background: rgba(26,19,16,.56) !important;
  border-color: rgba(255,255,255,.20) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.18) !important;
}.office-lightbox-close {
  width: 50px !important;
  height: 50px !important;
  background: rgba(26,19,16,.70) !important;
  border: 1px solid rgba(255,255,255,.28) !important;
  box-shadow: 0 8px 26px rgba(0,0,0,.22) !important;
  backdrop-filter: blur(9px);
  font-size: 29px !important;
}.office-lightbox-close:hover,
.office-lightbox-close:focus-visible {
  background: var(--accent) !important;
  border-color: rgba(255,255,255,.74) !important;
}@media (max-width:900px) {
  .office-lightbox-figure::before {
    height: 90px;
  }

  .office-lightbox-close {
    width: 44px !important;
    height: 44px !important;
    font-size: 26px !important;
  }

  .office-lightbox-viewport {
    touch-action: pan-y;
  }
}@media (prefers-reduced-motion:reduce) {
  .office-lightbox-thumb {
    transition: none !important;
  }
}.office-lightbox-image.is-animating {
  transition: transform .62s cubic-bezier(.22,.61,.36,1) !important;
}.office-lightbox.is-transitioning .office-lightbox-arrow,
.office-lightbox.is-transitioning .office-lightbox-thumb {
  pointer-events: none;
}.office-lightbox-arrow:disabled,
.office-lightbox-thumb:disabled {
  cursor: default;
}.office-lightbox-arrow,
.office-lightbox-close,
.office-lightbox-thumb {
  -webkit-tap-highlight-color: transparent;
}@media (max-width:900px) {
  .office-lightbox-thumbs {
    display: flex !important;
    left: 50% !important;
    bottom: 51px !important;
    max-width: calc(100% - 82px) !important;
    gap: 6px !important;
    padding: 5px !important;
    border-radius: 13px !important;
    background: rgba(18,13,11,.44) !important;
    border-color: rgba(255,255,255,.10) !important;
    backdrop-filter: blur(8px) !important;
  }

  .office-lightbox-thumb {
    flex: 0 0 46px !important;
    width: 46px !important;
    height: 34px !important;
    border-radius: 7px !important;
    border-width: 1.5px !important;
    opacity: .58 !important;
  }

  .office-lightbox-thumb.is-active {
    opacity: 1 !important;
    border-color: rgba(227,146,111,.92) !important;
  }

  .office-lightbox-figure::after {
    height: 132px !important;
    background: linear-gradient(0deg,rgba(10,7,6,.70),rgba(10,7,6,.18) 58%,transparent) !important;
  }

  .office-lightbox-arrow {
    width: 40px !important;
    height: 40px !important;
    background: rgba(20,15,13,.30) !important;
    border-color: rgba(255,255,255,.22) !important;
    color: rgba(255,255,255,.94) !important;
    box-shadow: 0 5px 16px rgba(0,0,0,.14) !important;
    backdrop-filter: blur(6px) !important;
    opacity: .72;
    font-size: 30px !important;
  }

  .office-lightbox-prev {
    left: 7px !important;
  }

  .office-lightbox-next {
    right: 7px !important;
  }

  .office-lightbox-counter {
    bottom: 0;
    min-width: 58px !important;
    min-height: 27px !important;
    padding: 4px 10px !important;
    font-size: 11px !important;
    background: rgba(18,13,11,.54) !important;
  }
}@media (hover:none), (pointer:coarse) {
  .office-lightbox-arrow:hover,
  .office-lightbox-arrow:focus,
  .office-lightbox-arrow:focus-visible {
    background: rgba(20,15,13,.30) !important;
    border-color: rgba(255,255,255,.22) !important;
    transform: translateY(-50%) !important;
    outline: none !important;
    filter: none !important;
  }

  .office-lightbox-arrow:active {
    background: color-mix(in srgb,var(--accent) 48%,transparent) !important;
    border-color: rgba(255,255,255,.42) !important;
    opacity: .92;
  }

  .office-lightbox-close:focus,
  .office-lightbox-close:focus-visible {
    outline: none !important;
  }
}@media (prefers-reduced-motion:reduce) {
  .office-lightbox-image.is-animating {
    transition: none !important;
  }
}.map-view-switch {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 6;
  display: flex;
  gap: 3px;
  padding: 4px;
  border: 1px solid rgba(255,255,255,.3);
  border-radius: 999px;
  background: rgba(35,26,22,.72);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 8px 22px rgba(24,16,12,.16);
}.map-view-switch__button {
  min-height: 34px;
  padding: 7px 13px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: rgba(255,255,255,.78);
  font-size: 11px;
  font-weight: 750;
  cursor: pointer;
  transition: background .2s ease,color .2s ease,transform .2s ease;
}.map-view-switch__button:hover {
  color: #fff;
}.map-view-switch__button.is-active {
  background: linear-gradient(135deg,var(--accent),var(--accent-2));
  color: #fff;
  box-shadow: 0 4px 12px rgba(0,0,0,.16);
}.map-view-switch__button:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
}@media (max-width:900px) {
  .map-view-switch {
    top: 10px;
    right: 10px;
    padding: 3px;
  }

  .map-view-switch__button {
    min-height: 32px;
    padding: 6px 10px;
    font-size: 10px;
  }

  .yandex-map-card .external-map-consent {
    padding-top: 54px !important;
  }
}#reviews .review-yandex-widget-card {
  padding: 0 !important;
  overflow: hidden;
  min-height: 514px;
  background: var(--surface);
}#reviews .yandex-reviews-widget-wrap {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 514px;
  overflow: hidden;
  border-radius: inherit;
  background: var(--surface);
}#reviews .yandex-reviews-widget-frame {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 514px;
  border: 0;
  border-radius: inherit;
  box-sizing: border-box;
  background: var(--surface);
}#reviews .yandex-reviews-widget-link {
  box-sizing: border-box;
  position: absolute;
  z-index: 2;
  left: 0;
  bottom: 8px;
  width: 100%;
  padding: 0 16px;
  overflow: hidden;
  color: #b3b3b3;
  font-size: 10px;
  font-family: Arial,sans-serif;
  line-height: 14px;
  text-align: center;
  text-decoration: none;
  text-overflow: ellipsis;
  white-space: nowrap;
}@media (max-width:900px) {
  #reviews .review-yandex-widget-card,
  #reviews .yandex-reviews-widget-wrap,
  #reviews .yandex-reviews-widget-frame {
    min-height: 560px;
  }
}@media (max-width:520px) {
  #reviews .review-yandex-widget-card,
  #reviews .yandex-reviews-widget-wrap,
  #reviews .yandex-reviews-widget-frame {
    min-height: 620px;
  }
}@media (min-width:901px) and (max-width:1180px) {
  #office .office-intro {
    justify-content: flex-start !important;
  }

  #office .office-intro h2 {
    font-size: clamp(38px,4.15vw,46px) !important;
    line-height: 1.01 !important;
    margin: 14px 0 16px !important;
  }

  #office .office-intro p {
    font-size: 14px !important;
    line-height: 1.5 !important;
    margin-bottom: 0 !important;
  }

  #office .office-address {
    margin-top: 24px !important;
    padding-top: 0 !important;
    flex-shrink: 0 !important;
  }

  #office .office-main-image {
    min-height: 380px !important;
  }
}#office .office-intro {
  display: flex;
  flex-direction: column;
}#office .office-address-compact {
  margin-top: 20px !important;
  padding-top: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  flex-shrink: 0 !important;
}#office .office-address-compact .ui-icon {
  width: 38px !important;
  height: 38px !important;
  flex: 0 0 38px !important;
  padding: 9px !important;
}#office .office-address-compact strong {
  font: 22px/1.15 Georgia,"Times New Roman",serif !important;
  color: var(--text) !important;
  min-width: 0;
}@media (min-width:901px) and (max-width:1180px) {
  #office .office-intro {
    min-height: 0 !important;
    padding: 26px !important;
  }

  #office .office-intro h2 {
    margin-bottom: 0 !important;
  }

  #office .office-address-compact {
    margin-top: 18px !important;
  }

  #office .office-address-compact strong {
    font-size: 20px !important;
  }
}@media (max-width:900px) {
  #office .office-address-compact {
    margin-top: 18px !important;
  }

  #office .office-address-compact strong {
    font-size: 19px !important;
  }
}.map-view-switch[hidden] {
  display: none !important;
}.yandex-map-card .external-map-consent {
  padding-top: 34px !important;
}@media (min-width:1181px) {
  #office .yandex-map-card .external-map-consent {
    padding-top: 18px !important;
  }
}@media (max-width:900px) {
  #office .yandex-map-card .external-map-consent {
    padding-top: 25px !important;
  }
}.contact-form .phone-field-error {
  min-height: 0;
  margin: 0;
  color: #f0a07a;
  font-size: 11px;
  line-height: 1.35;
  letter-spacing: 0;
  text-transform: none;
}.contact-form input[name="contact"][aria-invalid="false"]:focus {
  border-color: rgba(240,160,122,.55);
  box-shadow: 0 0 0 3px rgba(240,160,122,.08);
}.contact-form .phone-field-error:not(:empty) {
  display: block;
  margin-top: 2px;
  color: #ffad86;
  font-size: 12px;
  font-weight: 700;
}.contact-form input[name="contact"].is-invalid {
  border-color: #ff9b72 !important;
  box-shadow: 0 0 0 3px rgba(255,155,114,.16) !important;
}#consultation .consult-icon-disc {
  overflow: hidden;
}#consultation .consult-icon-disc img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: cover;
}.price-page {
  padding: 50px 0 100px;
}.price-page h1 {
  font: clamp(52px,7vw,100px) Georgia,serif;
  letter-spacing: -.05em;
  margin: 25px 0;
}.price-table {
  border: 1px solid var(--line);
  border-radius: 28px;
  overflow: hidden;
  background: var(--surface);
}.price-section-title {
  padding: 22px;
  background: var(--surface-2);
  font: 28px Georgia,serif;
}.price-row {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 20px;
  padding: 18px 22px;
  border-top: 1px solid var(--line);
}.price-row span {
  color: var(--muted);
}.price-note {
  margin-top: 24px;
  padding: 24px;
  border-radius: 22px;
  background: var(--surface-2);
  color: var(--muted);
}.simple-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 25px 0;
}.simple-head a {
  color: var(--accent);
  font-weight: 700;
}.price-intro {
  max-width: 800px;
  color: var(--muted);
}.price-cta {
  margin-top: 30px;
}.footer-monogram img {
  width: min(160px,100%);
  height: auto;
  display: block;
  margin-inline: auto;
}.not-found-page {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 32px 20px;
}.not-found-card {
  width: min(820px,100%);
  padding: clamp(30px,6vw,68px);
  text-align: center;
}.not-found-code {
  display: block;
  color: var(--accent);
  font: 700 clamp(54px,10vw,110px)/1 Georgia,serif;
}.not-found-card h1 {
  margin: 16px 0 12px;
  font: clamp(34px,5vw,62px)/1.02 Georgia,serif;
}.not-found-card p {
  max-width: 600px;
  margin: 0 auto 28px;
  color: var(--muted);
  font-size: 18px;
  line-height: 1.55;
}.not-found-actions {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}