@font-face {
 font-family: Manrope;
 src: url('/assets/manrope-400.woff2') format('woff2');
 font-weight: 400;
 font-display: swap;
}
@font-face {
 font-family: Manrope;
 src: url('/assets/manrope-500.woff2') format('woff2');
 font-weight: 500;
 font-display: swap;
}
@font-face {
 font-family: Manrope;
 src: url('/assets/manrope-600.woff2') format('woff2');
 font-weight: 600;
 font-display: swap;
}
@font-face {
 font-family: Manrope;
 src: url('/assets/manrope-700.woff2') format('woff2');
 font-weight: 700 900;
 font-display: swap;
}
* {
 box-sizing: border-box;
}
html {
 scroll-padding-top: 100px;
}
body {
 margin: 0;
 background: var(--paper);
 color: var(--ink);
 font: 15px/1.65 var(--font);
 -webkit-font-smoothing: antialiased;
}
button,
input,
select,
textarea {
 font: inherit;
}
button,
summary,
select {
 cursor: pointer;
}
button,
a,
input,
select,
textarea,
summary {
 touch-action: manipulation;
}
button {
 color: inherit;
}
a {
 color: inherit;
 text-decoration: none;
}
img {
 display: block;
 max-width: 100%;
 height: auto;
}
h1,
h2,
h3,
p {
 margin: 0;
}
h1,
h2,
h3 {
 line-height: 1.15;
}
h1 {
 font-size: clamp(42px, 5.4vw, 76px);
 letter-spacing: -0.055em;
 font-weight: 700;
}
h2 {
 font-size: clamp(28px, 3.2vw, 43px);
 letter-spacing: -0.045em;
}
h3 {
 font-size: 21px;
 letter-spacing: -0.025em;
}
p {
 color: var(--muted);
}
strong {
 font-weight: 700;
}
em {
 font-style: normal;
 color: #588269;
}
small,
.small {
 font-size: 12px;
}
button {
 border: 0;
 background: none;
}
svg {
 flex-shrink: 0;
}
a:focus-visible,
button:focus-visible,
summary:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
 outline: 3px solid #6c925a;
 outline-offset: 4px;
}
::selection {
 background: var(--accent);
 color: var(--brand);
}
[hidden] {
 display: none !important;
}
.container {
 max-width: var(--content-width);
 width: calc(100% - 96px);
 margin-inline: auto;
}
.narrow {
 max-width: 860px;
}
.sr-only {
 position: absolute;
 width: 1px;
 height: 1px;
 padding: 0;
 margin: -1px;
 overflow: hidden;
 clip: rect(0, 0, 0, 0);
 white-space: nowrap;
 border: 0;
}
.skip-link {
 position: fixed;
 top: -80px;
 left: 20px;
 z-index: 100;
 background: var(--brand);
 color: white;
 padding: 14px;
}
.skip-link:focus {
 top: 10px;
}
.button {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 gap: 10px;
 border: 1px solid transparent;
 min-height: 48px;
 padding: 13px 23px;
 border-radius: var(--button-radius);
 font-weight: var(--button-weight);
 font-size: 14px;
 line-height: 1.35;
 transition:
  background 0.15s,
  transform 0.15s;
}
.button:hover {
 transform: translateY(-1px);
}
.button.primary {
 background: var(--brand);
 color: white;
}
.button.primary:hover {
 background: var(--brand-hover);
}
.button.secondary {
 background: transparent;
 border-color: #b9c8bb;
 color: var(--ink);
}
.button.secondary:hover {
 background: var(--brand-soft);
}
.button.cream {
 background: #edf0df;
 color: var(--brand);
}
.eyebrow {
 font-size: 11px;
 font-weight: 700;
 letter-spacing: 0.12em;
 text-transform: uppercase;
 color: #497159;
 margin-bottom: 20px;
}
.lead {
 font-size: 19px;
 line-height: 1.7;
 max-width: 680px;
}
.hero-actions {
 display: flex;
 justify-content: center;
 gap: 12px;
 flex-wrap: wrap;
 margin-top: 28px;
}
.language-switch {
 display: flex;
 align-items: center;
 padding: 3px;
 border: 1px solid var(--line);
 border-radius: 7px;
 gap: 1px;
 flex-shrink: 0;
}
.language-switch button {
 font-size: 10px !important;
 letter-spacing: 0.04em;
 font-weight: 700;
 padding: 7px 8px;
 min-height: 32px;
 border-radius: 4px;
}
.language-switch button[aria-pressed='true'] {
 background: var(--brand);
 color: #fff;
}
.site-header {
 position: sticky;
 top: 0;
 z-index: 20;
 background: #faf9f5f5;
 backdrop-filter: blur(16px);
 border-bottom: 1px solid #dce3da80;
}
.site-nav {
 max-width: 1440px;
 width: calc(100% - 64px);
 margin: auto;
 display: flex;
 align-items: center;
 gap: 32px;
 min-height: 86px;
}
.brand {
 font-size: 39px;
 line-height: 1;
 font-weight: 800;
 letter-spacing: -2.5px;
 flex-shrink: 0;
}
.brand span {
 color: #729656;
}
.site-links {
 display: flex;
 align-items: center;
 gap: 25px;
 margin-left: auto;
 font-size: 12px;
 font-weight: 700;
}
.site-actions {
 display: flex;
 gap: 15px;
 align-items: center;
}
.site-actions .button {
 font-size: 12px;
 min-height: 43px;
 padding: 12px 17px;
}
.nav-dropdown {
 position: relative;
}
.nav-dropdown summary {
 display: flex;
 align-items: center;
 gap: 5px;
 list-style: none;
}
.nav-dropdown summary::-webkit-details-marker {
 display: none;
}
.nav-dropdown summary svg {
 width: 13px;
}
.nav-popover {
 position: absolute;
 top: 35px;
 left: -30px;
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 0;
 width: 520px;
 background: #fff;
 padding: 15px;
 border: 1px solid var(--line);
 border-radius: 10px;
 box-shadow: 0 20px 50px #193a3220;
}
.nav-popover a {
 padding: 12px;
 border-radius: 5px;
}
.nav-popover a:hover {
 background: var(--brand-soft);
}
.site-links .nav-dropdown:nth-child(3) .nav-popover {
 width: 370px;
 grid-template-columns: 1fr;
 left: auto;
 right: 0;
}
.menu-trigger {
 display: none;
}
.home-hero {
 text-align: center;
 padding: 75px 0 35px;
}
.home-hero h1 span {
 color: #5b7c61;
}
.home-hero .lead {
 margin: 25px auto 0;
 max-width: 690px;
}
.home-hero .eyebrow {
 display: flex;
 gap: 8px;
 justify-content: center;
 align-items: center;
}
.home-hero .eyebrow i {
 width: 7px;
 height: 7px;
 border-radius: 50%;
 background: #668b54;
}
.hero-note {
 display: flex;
 align-items: center;
 justify-content: center;
 gap: 7px;
 color: var(--muted);
 margin-top: 17px;
}
.hero-note svg {
 width: 14px;
}
.hero-proof {
 display: flex;
 gap: 14px;
 justify-content: center;
 align-items: center;
 margin: 31px auto 0;
 font-size: 11px;
 text-align: left;
}
.hero-proof > span {
 font-weight: 700;
}
.hero-proof small {
 display: block;
 font-size: 10px;
 color: var(--muted);
 font-weight: 400;
}
.proof-faces {
 display: flex;
 padding-left: 8px;
}
.proof-faces .w-avatar {
 width: 35px;
 height: 35px;
 margin-left: -8px;
 border: 2px solid var(--paper);
}
.workspace-stage {
 max-width: 1480px;
 width: calc(100% - 48px);
 margin: 20px auto 25px;
 border: 1px solid #bdc9bb;
 border-radius: 14px;
 background: #e9eee3;
 padding: 11px;
 box-shadow: 0 45px 70px -45px #24423380;
}
.workspace-stage-label {
 display: flex;
 justify-content: space-between;
 align-items: center;
 gap: 20px;
 padding: 7px 10px 17px;
 font-size: 11px;
}
.workspace-stage-label p {
 font-size: 10px;
}
.workspace-stage-label a {
 display: flex;
 align-items: center;
 gap: 7px;
 font-weight: 700;
}
.section {
 padding-block: 95px;
}
.section-heading {
 max-width: 710px;
 margin-bottom: 38px;
}
.section-heading p:not(.eyebrow) {
 font-size: 17px;
 margin-top: 19px;
}
.feature-grid {
 display: grid;
 grid-template-columns: repeat(3, minmax(0, 1fr));
 gap: 22px;
}
.feature-card {
 display: flex;
 flex-direction: column;
 padding: 30px;
 border: 1px solid var(--line);
 background: #fff;
 border-radius: var(--radius);
 min-height: 320px;
 transition:
  border-color 0.2s,
  box-shadow 0.2s;
}
.feature-card:hover {
 border-color: #6e8b6d;
 box-shadow: 0 12px 30px #173f330a;
}
.card-icon {
 display: grid;
 place-items: center;
 width: 42px;
 height: 42px;
 background: var(--brand-soft);
 border-radius: 9px;
 margin-bottom: 28px;
}
.card-icon svg {
 width: 22px;
 height: 22px;
}
.feature-card p {
 font-size: 14px;
 margin: 15px 0 25px;
 line-height: 1.75;
}
.card-link {
 display: flex;
 align-items: center;
 justify-content: space-between;
 gap: 10px;
 font-size: 12px;
 font-weight: 700;
 margin-top: auto;
}
.section-action {
 text-align: center;
 margin-top: 30px;
}
.tinted {
 background: #edf0e9;
}
.journey {
 display: grid;
 grid-template-columns: repeat(4, minmax(0, 1fr));
 gap: 0;
}
.journey > a,
.journey > article {
 padding: 22px 30px 20px 0;
 border-top: 1px solid #b7c7b4;
 position: relative;
}
.journey > a:hover h3 {
 color: #63844a;
}
.journey > * > span {
 display: block;
 font-size: 12px;
 letter-spacing: 0.1em;
 font-weight: 700;
 color: #719062;
 margin-bottom: 25px;
}
.journey h3,
.journey h2 {
 font-size: 22px;
 line-height: 1.25;
 margin-bottom: 15px;
}
.journey p {
 font-size: 13px;
 line-height: 1.8;
}
.journey svg {
 margin-top: 20px;
}
.people-section {
 display: grid;
 grid-template-columns: 0.8fr 1fr;
 gap: 95px;
 align-items: center;
}
.people-photo {
 position: relative;
 border-radius: 12px;
 overflow: hidden;
 max-width: 500px;
}
.people-photo img {
 aspect-ratio: 1/1.05;
 object-fit: cover;
 width: 100%;
}
.people-photo > span {
 position: absolute;
 bottom: 23px;
 left: 22px;
 background: #fff;
 padding: 8px 14px;
 border-radius: 5px;
 font-size: 12px;
 font-weight: 700;
}
.people-section .lead {
 margin: 25px 0 18px;
}
.people-section .button {
 margin-top: 26px;
}
.industry-grid {
 display: grid;
 grid-template-columns: repeat(4, minmax(0, 1fr));
 gap: 16px;
}
.industry-card {
 border-top: 1px solid var(--line);
 padding: 23px 15px 20px 0;
}
.industry-card > svg:first-child {
 width: 22px;
 height: 22px;
 margin-bottom: 20px;
 color: #6e8657;
}
.industry-card h3 {
 font-size: 17px;
}
.industry-card p {
 font-size: 13px;
 margin: 13px 0 20px;
}
.quote-section {
 padding: 60px 0 100px;
 text-align: center;
 max-width: 850px;
}
.quote-section > .w-avatar,
.quote-section > span > .w-avatar {
 width: 65px;
 height: 65px;
 margin: 0 auto 25px;
}
.quote-section blockquote {
 font-size: 29px;
 line-height: 1.5;
 letter-spacing: -0.03em;
 margin: 20px 0;
}
.quote-section a {
 display: inline-flex;
 align-items: center;
 font-size: 12px;
 gap: 7px;
 margin-top: 18px;
}
.closing {
 position: relative;
 overflow: hidden;
 background: var(--brand);
 color: white;
 padding: 85px 0 105px;
 text-align: center;
}
.closing .container {
 position: relative;
 z-index: 1;
}
.closing .eyebrow {
 color: #b1c69d;
}
.closing h2 {
 font-size: clamp(36px, 4.8vw, 60px);
 max-width: 700px;
 margin: 0 auto;
}
.closing p:not(.eyebrow) {
 color: #c1cfc1;
 margin: 25px 0;
 font-size: 17px;
}
.closing small {
 display: block;
 color: #b8c8b4;
 margin-top: 18px;
}
.closing-mark {
 position: absolute;
 bottom: -150px;
 left: 0;
 right: 0;
 font-size: clamp(130px, 25vw, 320px);
 line-height: 1;
 font-weight: 800;
 letter-spacing: -0.075em;
 color: #ffffff05;
 pointer-events: none;
 z-index: -1;
}
.site-footer {
 padding-block: 65px 25px;
}
.footer-grid {
 display: grid;
 grid-template-columns: 1.3fr 1fr 1fr 1fr;
 gap: 45px;
}
.footer-grid h3 {
 font-size: 12px;
 margin-bottom: 22px;
}
.footer-grid a:not(.brand) {
 display: block;
 font-size: 11px;
 color: var(--muted);
 margin: 10px 0;
}
.footer-grid p {
 font-size: 13px;
 margin-top: 25px;
 max-width: 190px;
}
.footer-grid small {
 font-size: 10px;
 display: block;
 margin-top: 16px;
 color: var(--muted);
}
.footer-bottom {
 border-top: 1px solid var(--line);
 margin-top: 45px;
 padding-top: 22px;
 display: flex;
 align-items: center;
 justify-content: space-between;
 font-size: 10px;
 color: var(--muted);
}
.page-hero {
 padding-top: 75px;
 padding-bottom: 55px;
 text-align: center;
 max-width: 1040px;
}
.page-hero h1 {
 font-size: clamp(38px, 5vw, 64px);
}
.page-hero .lead {
 margin: 25px auto;
}
.page-hero > .button {
 margin-top: 15px;
}
.editorial-layout {
 display: grid;
 grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr);
 gap: 95px;
 padding-block: 30px 90px;
 align-items: start;
}
.editorial-steps > section {
 display: flex;
 gap: 30px;
 border-top: 1px solid var(--line);
 padding: 35px 0;
}
.step-number {
 font-size: 12px;
 color: #739067;
 letter-spacing: 0.05em;
 font-weight: 700;
 padding-top: 8px;
}
.editorial-steps h2 {
 font-size: 28px;
 line-height: 1.25;
 margin-bottom: 18px;
}
.editorial-steps p {
 line-height: 1.85;
 font-size: 16px;
}
.editorial-aside {
 padding: 36px;
 background: #e9eee3;
 border-radius: 10px;
 position: sticky;
 top: 120px;
}
.large-icon {
 display: grid;
 place-items: center;
 width: 80px;
 height: 80px;
 border-radius: 16px;
 background: #d5e1cc;
 margin-bottom: 35px;
}
.large-icon svg {
 width: 38px;
 height: 38px;
}
.editorial-aside h2 {
 font-size: 27px;
 margin-bottom: 20px;
}
.editorial-aside p {
 font-size: 14px;
 margin-bottom: 20px;
}
.editorial-aside > a:not(.button) {
 display: flex;
 gap: 10px;
 align-items: center;
 font-size: 12px;
 font-weight: 700;
}
.photo-aside img {
 width: 100%;
 border-radius: 7px;
 aspect-ratio: 1.25;
 object-fit: cover;
 margin-bottom: 30px;
}
.editorial-title {
 font-size: 32px;
 margin-bottom: 30px;
}
.article-body {
 max-width: 800px;
 padding-bottom: 90px;
}
.article-body .editorial-steps h2 {
 font-size: 30px;
}
.article-body .step-number {
 display: none;
}
.guide-card {
 padding: 35px 30px;
 border: 1px solid var(--line);
 border-radius: 10px;
 background: white;
 display: flex;
 flex-direction: column;
 gap: 22px;
}
.guide-card > span:first-child {
 font-size: 13px;
 color: #668458;
}
.guide-card h2 {
 font-size: 27px;
}
.guide-card p {
 font-size: 14px;
}
.faq-list {
 margin-top: 35px;
 border-top: 1px solid var(--line);
}
.faq-list details {
 border-bottom: 1px solid var(--line);
 padding: 23px 0;
}
.faq-list summary {
 list-style: none;
 display: flex;
 align-items: center;
 justify-content: space-between;
 font-weight: 700;
 font-size: 16px;
 gap: 20px;
}
.faq-list summary::-webkit-details-marker {
 display: none;
}
.faq-list p {
 margin: 18px 38px 0 0;
 line-height: 1.85;
}
.contact-layout {
 display: grid;
 grid-template-columns: 1fr 1.2fr;
 gap: 90px;
 max-width: 1050px;
 padding: 25px 0 100px;
}
.contact-person > img {
 width: 90px;
 height: 100px;
 object-fit: cover;
 border-radius: 9px;
 margin-bottom: 25px;
}
.contact-person h2 {
 font-size: 29px;
}
.contact-person p {
 margin: 20px 0 30px;
}
.contact-person > a {
 display: block;
 padding: 18px 0;
 border-top: 1px solid var(--line);
 font-size: 12px;
 color: var(--muted);
}
.contact-person strong {
 display: block;
 font-size: 20px;
 color: var(--ink);
 margin-top: 7px;
}
.contact-form-card {
 padding: 35px;
 border: 1px solid var(--line);
 background: white;
 border-radius: 12px;
}
.contact-form-card h2 {
 font-size: 27px;
}
.contact-form-card > p {
 font-size: 14px;
 margin: 15px 0 25px;
}
form label {
 display: block;
 font-size: 12px;
 font-weight: 700;
 margin-bottom: 22px;
}
form input:not([type='checkbox'], [type='radio']),
form select,
form textarea {
 display: block;
 width: 100%;
 border: 1px solid #c6d2c7;
 border-radius: 6px;
 background: #fff;
 padding: 12px 14px;
 color: var(--ink);
 font-size: 14px;
 margin-top: 8px;
 min-height: 46px;
}
form textarea {
 min-height: 110px;
 resize: vertical;
}
form small {
 display: block;
 color: var(--muted);
 font-size: 11px;
 line-height: 1.7;
 margin-top: 15px;
}
input[type='checkbox'],
input[type='radio'] {
 accent-color: var(--brand);
 width: 17px;
 height: 17px;
 flex-shrink: 0;
}
#contact-result p {
 margin: 20px 0;
}
.story-grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 35px;
}
.story-grid article {
 background: white;
 padding: 35px;
 border: 1px solid var(--line);
 border-radius: 10px;
}
.story-grid .w-avatar {
 width: 65px;
 height: 65px;
 margin-bottom: 25px;
}
.story-grid h2 {
 font-size: 25px;
 margin-bottom: 20px;
}
.story-grid h3 {
 font-size: 18px;
 margin-bottom: 15px;
}
.story-grid p {
 font-size: 14px;
 margin-bottom: 20px;
}
.price-packages {
 display: grid;
 grid-template-columns: repeat(3, minmax(0, 1fr));
 gap: 20px;
 padding-block: 20px 30px;
}
.package-card {
 position: relative;
 display: flex;
 flex-direction: column;
 border: 1px solid var(--line);
 padding: 35px;
 border-radius: 12px;
 background: #fff;
}
.package-card.featured {
 background: var(--brand);
 color: #fff;
 border-color: var(--brand);
}
.package-card h2 {
 font-size: 24px;
 line-height: 1.35;
 letter-spacing: -0.03em;
 min-height: 100px;
}
.package-card .eyebrow {
 color: #64844f;
}
.package-card.featured .eyebrow,
.package-card.featured > p:last-child {
 color: #c2d1b9;
}
.package-highlight {
 position: absolute;
 top: -15px;
 left: 25px;
 background: var(--accent);
 padding: 5px 12px;
 color: var(--brand);
 border-radius: 5px;
 font-size: 10px;
 font-weight: 700;
 letter-spacing: 0.03em;
}
.package-price {
 margin-block: 25px;
}
.package-price small {
 display: block;
 margin-bottom: 5px;
 font-size: 10px;
}
.package-price strong {
 font-size: 40px;
 letter-spacing: -0.06em;
 line-height: 1.1;
}
.package-price strong span {
 font-size: 12px;
 letter-spacing: 0;
 font-weight: 500;
 margin-left: 8px;
}
.package-card .button {
 margin-top: auto;
}
.package-card > p:last-child {
 font-size: 11px;
 margin-top: 20px;
}
.tier-grid {
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 25px;
 padding-top: 25px;
}
.tier-grid h2 {
 font-size: 20px;
 margin-bottom: 18px;
}
.tier-row {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 border: 1px solid var(--line);
 border-radius: 10px;
 background: white;
}
.tier-row button {
 padding: 22px 10px;
 display: flex;
 flex-direction: column;
 align-items: center;
 gap: 6px;
}
.tier-row button + button {
 border-left: 1px solid var(--line);
}
.tier-row button:hover {
 background: var(--brand-soft);
}
.tier-row strong {
 font-size: 13px;
}
.tier-row span {
 font-size: 11px;
 color: var(--muted);
}
.tier-row b {
 font-size: 24px;
 letter-spacing: -0.04em;
}
.tier-row small {
 font-size: 10px;
}
.comparison-scroll {
 overflow: auto;
 margin-top: 30px;
}
.comparison {
 width: 100%;
 border-collapse: collapse;
 text-align: left;
 font-size: 13px;
 min-width: 580px;
}
.comparison th,
.comparison td {
 border-bottom: 1px solid var(--line);
 padding: 20px;
}
.comparison th:not(:first-child),
.comparison td {
 text-align: center;
}
.comparison thead th {
 font-size: 12px;
 color: var(--muted);
}
.comparison tbody th {
 font-weight: 500;
}
.comparison td .w-icon {
 color: #517e46;
}
.price-builder {
 display: grid;
 grid-template-columns: 1.2fr 1fr;
 gap: 50px;
 align-items: start;
}
.builder-options {
 min-width: 0;
}
.builder-options h3 {
 font-size: 18px;
 margin: 27px 0 15px;
}
.checkbox-label {
 display: flex;
 align-items: center;
 gap: 10px;
 font-weight: 500;
}
.service-choice {
 display: flex;
 align-items: flex-start;
 gap: 13px;
 padding: 20px;
 border: 1px solid var(--line);
 border-radius: 7px;
 background: white;
 margin-bottom: 10px;
}
.service-choice input {
 margin-top: 4px;
}
.service-choice > span {
 flex: 1;
}
.service-choice strong {
 font-size: 13px;
}
.service-choice small {
 font-size: 11px;
 margin-top: 5px;
 font-weight: 400;
}
.service-choice > b {
 font-size: 14px;
 text-align: right;
 white-space: nowrap;
}
.builder-summary {
 background: white;
 border: 1px solid var(--line);
 padding: 32px;
 border-radius: 12px;
 position: sticky;
 top: 110px;
}
.builder-summary h3 {
 font-size: 14px;
 font-weight: 500;
}
.monthly {
 display: flex;
 align-items: baseline;
 gap: 10px;
 margin: 8px 0 15px;
}
.monthly strong {
 font-size: 54px;
 letter-spacing: -0.06em;
 line-height: 1.2;
}
.monthly span {
 font-size: 12px;
 color: var(--muted);
}
#bundle-saving {
 font-size: 12px;
 color: #568349;
}
#chosen-services {
 margin-top: 20px;
 font-size: 12px;
}
#chosen-services > div {
 display: flex;
 justify-content: space-between;
 gap: 20px;
 margin: 10px 0;
}
#chosen-services strong {
 white-space: nowrap;
}
.builder-summary dl {
 font-size: 12px;
 margin: 20px 0;
}
.builder-summary dl > div {
 border-top: 1px solid var(--line);
 display: flex;
 justify-content: space-between;
 gap: 15px;
 padding: 15px 0;
}
.builder-summary dd {
 margin: 0;
 white-space: nowrap;
 font-weight: 700;
}
.builder-summary .small {
 font-size: 10px;
 line-height: 1.8;
}
.builder-summary .button {
 display: flex;
 width: 100%;
 margin-top: 13px;
}
.included-list {
 background: #e0e8d7;
 padding: 20px;
 border-radius: 7px;
}
.included-list > strong {
 display: block;
 font-size: 12px;
 margin-bottom: 10px;
}
.included-list span {
 display: block;
 font-size: 12px;
 line-height: 1.9;
}
.included-list span:before {
 content: '+';
 padding-right: 9px;
 color: #678657;
}
.included-list small {
 font-size: 10px;
 margin-top: 12px;
}
.service-price-grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 20px;
}
.service-price-grid.two {
 grid-template-columns: 1fr 1fr;
}
.service-price-card {
 padding: 28px;
 border: 1px solid var(--line);
 background: white;
 border-radius: 10px;
}
.service-price-card h3 {
 font-size: 21px;
}
.service-price-card > p:not(.eyebrow) {
 font-size: 13px;
 margin: 15px 0 22px;
}
.service-price-card > strong {
 display: block;
 font-size: 17px;
}
.service-price-card > small {
 display: block;
 color: var(--muted);
 font-size: 10px;
 margin-top: 6px;
}
.service-price-card details {
 border-top: 1px solid var(--line);
 margin-top: 25px;
 padding-top: 15px;
}
.service-price-card summary {
 display: flex;
 justify-content: space-between;
 font-size: 12px;
 font-weight: 700;
 list-style: none;
}
.service-price-card details p {
 font-size: 12px;
 line-height: 1.85;
 margin-top: 15px;
}
.spaced {
 margin-top: 70px;
}
.trial-layout {
 display: grid;
 grid-template-columns: 1.3fr 1fr;
 gap: 80px;
 padding-bottom: 30px;
}
.trial-layout form {
 padding: 35px;
 border: 1px solid var(--line);
 background: white;
 border-radius: 12px;
}
.trial-layout fieldset {
 border: 0;
 margin: 0 0 30px;
 padding: 0;
}
.trial-layout legend {
 font-size: 20px;
 font-weight: 700;
 margin-bottom: 20px;
}
.trial-choices {
 display: grid;
 gap: 12px;
}
.trial-choices label {
 display: grid;
 grid-template-columns: 20px 24px 1fr;
 align-items: center;
 gap: 12px;
 border: 1px solid var(--line);
 padding: 20px;
 border-radius: 8px;
 margin: 0;
 cursor: pointer;
}
.trial-choices label:has(:checked) {
 border-color: #577b48;
 background: #f0f4ea;
}
.trial-choices label > span {
 grid-column: 3;
 font-weight: 400;
 color: var(--muted);
 font-size: 12px;
}
.trial-choices label > strong {
 font-size: 14px;
}
.trial-layout > aside h2 {
 font-size: 23px;
 margin: 30px 0 16px;
}
.trial-layout aside > p {
 font-size: 14px;
}
.trial-promise {
 position: relative;
 background: var(--brand);
 color: #fff;
 border-radius: 12px;
 padding: 28px 30px;
 overflow: hidden;
}
.trial-promise > span {
 float: right;
 font-size: 100px;
 line-height: 1;
 color: #afc496;
 letter-spacing: -0.06em;
}
.trial-promise h2 {
 margin-top: 0 !important;
 max-width: 190px;
}
.trial-promise p {
 font-size: 12px;
 color: #c1d1bd;
 max-width: 320px;
}
.trial-layout #trial-migration-note {
 font-size: 12px;
 line-height: 1.8;
 margin: 0 0 25px;
}
dialog {
 border: 1px solid var(--line);
 border-radius: 12px;
 padding: 30px;
 max-width: 640px;
 width: calc(100% - 32px);
 color: var(--ink);
 box-shadow: 0 30px 90px #173f3340;
}
dialog::backdrop {
 background: #0f271c70;
 backdrop-filter: blur(3px);
}
.dialog-heading {
 display: flex;
 justify-content: space-between;
 gap: 25px;
 align-items: center;
 margin-bottom: 25px;
}
.dialog-heading h2 {
 font-size: 26px;
}
.dialog-heading button {
 padding: 8px;
}
#price-summary {
 display: block;
 width: 100%;
 resize: vertical;
 min-height: 260px;
 border: 1px solid var(--line);
 border-radius: 6px;
 padding: 15px;
 font: 12px/1.8 var(--font);
 margin-bottom: 20px;
}
#copy-status {
 font-size: 12px;
 margin-top: 10px;
}
@media (min-width: 1600px) {
 .home-hero {
  padding-top: 90px;
 }
}
@media (max-width: 1150px) {
 .site-links {
  gap: 15px;
 }
 .site-nav {
  gap: 20px;
  width: calc(100% - 40px);
 }
 .site-actions > .button {
  display: none;
 }
 .container {
  width: calc(100% - 64px);
 }
 .people-section {
  gap: 50px;
 }
 .editorial-layout {
  gap: 45px;
 }
 .price-builder {
  gap: 25px;
 }
 .package-card {
  padding: 27px;
 }
 .industry-grid {
  grid-template-columns: repeat(3, 1fr);
 }
}
@media (max-width: 900px) {
 .site-links {
  display: none;
 }
 .site-actions {
  margin-left: auto;
 }
 .menu-trigger {
  display: flex;
  gap: 8px;
  align-items: center;
  min-height: 44px;
  font-size: 12px;
  font-weight: 700;
 }
 .site-nav {
  min-height: 72px;
 }
 .feature-grid,
 .service-price-grid {
  grid-template-columns: repeat(2, 1fr);
 }
 .journey {
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
 }
 .home-hero h1 {
  font-size: 59px;
 }
 .people-section {
  gap: 35px;
 }
 .footer-grid {
  gap: 25px;
 }
 .price-packages {
  gap: 12px;
 }
 .package-card {
  padding: 25px 20px;
 }
 .package-card h2 {
  font-size: 20px;
 }
 .package-price strong {
  font-size: 33px;
 }
 .price-builder {
  grid-template-columns: 1fr 1fr;
 }
 .builder-summary {
  padding: 25px;
 }
 .monthly strong {
  font-size: 43px;
 }
 .trial-layout,
 .contact-layout {
  gap: 35px;
 }
 .trial-layout form {
  padding: 25px;
 }
 .story-grid {
  grid-template-columns: 1fr;
 }
 .editorial-steps h2 {
  font-size: 25px;
 }
 .editorial-layout {
  grid-template-columns: 1.3fr 1fr;
  gap: 35px;
 }
 .editorial-aside {
  padding: 25px;
 }
}
@media (max-width: 650px) {
 .container {
  width: calc(100% - 36px);
 }
 .site-nav {
  width: calc(100% - 30px);
  gap: 12px;
  min-height: 66px;
 }
 .brand {
  font-size: 34px;
 }
 .site-actions {
  gap: 10px;
 }
 .language-switch button {
  padding: 7px;
 }
 .menu-trigger > span {
  display: none;
 }
 .home-hero {
  padding: 45px 0 22px;
 }
 .home-hero h1 {
  font-size: clamp(36px, 9.5vw, 52px);
  line-height: 1.08;
 }
 .home-hero .eyebrow {
  font-size: 8px;
  letter-spacing: 0.08em;
 }
 .lead,
 .home-hero .lead {
  font-size: 16px;
  line-height: 1.8;
 }
 .home-hero .lead {
  margin-top: 22px;
 }
 .hero-actions {
  gap: 10px;
  margin-top: 24px;
 }
 .hero-actions .button {
  padding-inline: 16px;
  font-size: 12px;
  min-height: 47px;
 }
 .hero-note {
  font-size: 9px;
  gap: 4px;
  align-items: flex-start;
  margin-top: 16px;
 }
 .hero-note svg {
  width: 12px;
  flex-shrink: 0;
 }
 .hero-proof {
  margin-top: 24px;
  font-size: 9px;
 }
 .hero-proof small {
  font-size: 8px;
  max-width: 230px;
 }
 .proof-faces .w-avatar {
  width: 30px;
  height: 30px;
 }
 .workspace-stage {
  width: calc(100% - 16px);
  padding: 5px;
  border-radius: 9px;
  margin-top: 10px;
 }
 .workspace-stage-label {
  padding: 9px 6px 14px;
  font-size: 9px;
  gap: 12px;
 }
 .workspace-stage-label p {
  display: none;
 }
 .workspace-stage-label a {
  font-size: 9px;
 }
 .workspace-stage-label svg {
  width: 12px;
 }
 .section {
  padding-block: 60px;
 }
 .section-heading {
  margin-bottom: 28px;
 }
 .section-heading p:not(.eyebrow) {
  font-size: 15px;
  margin-top: 16px;
 }
 .eyebrow {
  font-size: 9px;
  margin-bottom: 15px;
 }
 .feature-grid,
 .industry-grid,
 .service-price-grid,
 .service-price-grid.two {
  grid-template-columns: 1fr;
 }
 .feature-card {
  min-height: 0;
  padding: 25px;
 }
 .feature-card p {
  margin: 13px 0 22px;
  font-size: 14px;
 }
 .card-icon {
  margin-bottom: 20px;
 }
 .industry-grid {
  gap: 0;
 }
 .industry-card {
  display: grid;
  grid-template-columns: 30px 1fr 18px;
  gap: 12px;
  align-items: center;
  padding-block: 22px;
 }
 .industry-card > svg:first-child {
  margin: 0;
  grid-row: 1/3;
 }
 .industry-card p {
  grid-column: 2;
  margin: 0;
  font-size: 12px;
 }
 .industry-card > svg:last-child {
  grid-column: 3;
  grid-row: 1/3;
 }
 .industry-card h3 {
  font-size: 16px;
 }
 .journey {
  grid-template-columns: 1fr;
  gap: 10px;
 }
 .journey > a,
 .journey > article {
  padding: 24px 0;
 }
 .journey > * > span {
  margin-bottom: 15px;
 }
 .journey h3 {
  font-size: 24px;
 }
 .journey p {
  font-size: 14px;
 }
 .people-section {
  grid-template-columns: 1fr;
  gap: 32px;
 }
 .people-photo {
  max-width: none;
 }
 .people-photo img {
  aspect-ratio: 1.2;
  object-position: center 35%;
 }
 .people-section h2 {
  font-size: 34px;
 }
 .quote-section {
  padding-block: 30px 60px;
 }
 .quote-section blockquote {
  font-size: 23px;
 }
 .closing {
  padding: 60px 0 75px;
 }
 .closing h2 {
  font-size: 38px;
 }
 .closing p:not(.eyebrow) {
  font-size: 15px;
 }
 .closing small {
  font-size: 10px;
 }
 .site-footer {
  padding-top: 45px;
 }
 .footer-grid {
  grid-template-columns: 1fr 1fr;
  gap: 35px 22px;
 }
 .footer-grid > div:first-child {
  grid-column: 1/-1;
 }
 .footer-grid p {
  max-width: none;
  margin-top: 15px;
 }
 .footer-grid h3 {
  font-size: 12px;
  margin-bottom: 15px;
 }
 .footer-grid a:not(.brand) {
  font-size: 11px;
 }
 .footer-bottom {
  gap: 12px;
  font-size: 9px;
 }
 .page-hero {
  padding-top: 48px;
  padding-bottom: 35px;
 }
 .page-hero h1 {
  font-size: 39px;
  line-height: 1.1;
 }
 .page-hero .lead {
  margin-top: 20px;
 }
 .editorial-layout {
  grid-template-columns: 1fr;
  gap: 30px;
  padding: 10px 0 60px;
 }
 .editorial-steps > section {
  gap: 18px;
  padding: 27px 0;
 }
 .editorial-steps h2 {
  font-size: 25px;
 }
 .editorial-steps p {
  font-size: 15px;
 }
 .editorial-aside {
  position: static;
 }
 .editorial-title {
  font-size: 29px;
 }
 .article-body {
  padding-bottom: 60px;
 }
 .article-body .editorial-steps h2 {
  font-size: 25px;
 }
 .guide-card {
  padding: 27px;
 }
 .faq-list summary {
  font-size: 14px;
 }
 .faq-list p {
  font-size: 13px;
  margin-right: 10px;
 }
 .contact-layout {
  grid-template-columns: 1fr;
  padding-bottom: 60px;
  gap: 30px;
 }
 .contact-form-card {
  padding: 25px;
 }
 .price-packages {
  grid-template-columns: 1fr;
  gap: 28px;
  padding-top: 10px;
 }
 .package-card {
  padding: 30px;
 }
 .package-card h2 {
  min-height: 0;
  font-size: 24px;
  max-width: 310px;
 }
 .package-price {
  margin-block: 20px;
 }
 .package-price strong {
  font-size: 44px;
 }
 .tier-grid {
  grid-template-columns: 1fr;
  gap: 30px;
 }
 .tier-row button {
  padding: 20px 8px;
 }
 .comparison th,
 .comparison td {
  padding: 16px 12px;
 }
 .price-builder {
  grid-template-columns: 1fr;
  gap: 25px;
 }
 .builder-summary {
  position: static;
  padding: 28px;
 }
 .monthly strong {
  font-size: 56px;
 }
 .service-choice {
  padding: 15px;
  gap: 10px;
 }
 .service-choice > b {
  font-size: 12px;
 }
 .service-choice strong {
  font-size: 12px;
 }
 .service-choice small {
  font-size: 10px;
 }
 .service-price-card {
  padding: 27px;
 }
 .trial-layout {
  grid-template-columns: 1fr;
  gap: 30px;
 }
 .trial-layout form {
  padding: 24px;
 }
 .trial-choices label {
  padding: 17px 13px;
  gap: 10px;
 }
 .trial-choices label strong {
  font-size: 12px;
 }
 .trial-choices label > span {
  font-size: 11px;
 }
 .story-grid article {
  padding: 28px;
 }
 .section.narrow > p {
  margin-top: 18px;
 }
 dialog {
  padding: 22px;
 }
}
@media (prefers-reduced-motion: reduce) {
 * {
  animation: none !important;
  transition: none !important;
 }
}
/* Keep clipped assistive labels inside their own scroll regions. */
.comparison-scroll {
 position: relative;
}
.sr-only {
 left: 0;
 top: 0;
}
