:root {
  --public-gold: #c9a227;
  --public-gold-strong: #a98016;
  --public-gold-pale: #f7efd9;
  --public-ink: #17140f;
  --public-muted: #625d53;
  --public-line: #e6dfd2;
  --public-cream: #fbf9f4;
  --public-soft: #f4f0e7;
  --public-dark: #17140f;
  --public-dark-soft: #28231a;
  --public-white: #fff;
  --public-serif: "Playfair Display", Georgia, serif;
  --public-sans: "DM Sans", Arial, sans-serif;
  --public-container: 1240px;
  --public-shadow: 0 18px 48px rgba(40, 32, 16, .11);
}

.public-site, .public-site * { box-sizing: border-box; }
.public-site { margin: 0; color: var(--public-ink); background: var(--public-white); font-family: var(--public-sans); line-height: 1.55; overflow-x: hidden; }
.public-site a { color: inherit; }
.public-site button, .public-site input, .public-site select, .public-site textarea { font: inherit; }
.public-container { width: min(var(--public-container), calc(100% - 96px)); margin: 0 auto; }
.public-site h1, .public-site h2, .public-site h3, .public-site p { margin-top: 0; }
.public-site h1, .public-site h2, .public-site h3 { line-height: 1.08; }
.public-site h1, .public-site h2 { font-family: var(--public-serif); letter-spacing: -.035em; }
.public-site h1 em, .public-site h2 em { color: var(--public-gold); font-style: normal; }
.public-site .visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.public-skip-link { position: fixed; z-index: 100; top: -50px; left: 16px; padding: 10px 14px; color: var(--public-ink); background: var(--public-gold); border-radius: 0 0 8px 8px; font-weight: 700; text-decoration: none; }
.public-skip-link:focus { top: 0; }

.public-header { position: sticky; top: 0; z-index: 40; min-height: 84px; background: rgba(255, 255, 255, .96); border-bottom: 1px solid rgba(230, 223, 210, .8); backdrop-filter: blur(14px); transition: box-shadow .25s ease; }
.public-header.is-scrolled { box-shadow: 0 8px 28px rgba(30, 24, 14, .08); }
.public-header__inner { min-height: 84px; display: flex; align-items: center; gap: 34px; }
.public-brand { display: inline-flex; align-items: center; gap: 10px; min-width: 215px; color: var(--public-ink); text-decoration: none; }
.public-brand img { width: 46px; height: 46px; border-radius: 13px; }
.public-brand strong { display: block; font: 700 19px/1 var(--public-serif); letter-spacing: -.02em; }
.public-brand small { display: block; margin-top: 4px; color: var(--public-muted); font-size: 9px; letter-spacing: .08em; text-transform: uppercase; }
.public-navigation { display: flex; flex: 1; align-items: center; justify-content: flex-end; gap: 26px; }
.public-navigation > a { position: relative; padding: 30px 0 27px; color: var(--public-muted); font-size: 14px; text-decoration: none; }
.public-navigation > a::after { content: ""; position: absolute; right: 0; bottom: 18px; left: 0; height: 2px; background: var(--public-gold); transform: scaleX(0); transition: transform .2s ease; }
.public-navigation > a:hover, .public-navigation > a.is-active { color: var(--public-ink); }
.public-navigation > a:hover::after, .public-navigation > a.is-active::after { transform: scaleX(1); }
.public-navigation__actions { display: inline-flex; gap: 9px; margin-left: 8px; }
.public-menu-toggle { display: none; margin-left: auto; padding: 8px 10px; color: var(--public-ink); background: transparent; border: 1px solid var(--public-line); border-radius: 9px; font-size: 22px; }

.public-button { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; gap: 9px; padding: 11px 21px; border: 1px solid transparent; border-radius: 999px; font-size: 13px; font-weight: 700; text-decoration: none; transition: transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease; }
.public-button:hover { transform: translateY(-2px); box-shadow: 0 9px 22px rgba(40, 32, 16, .15); }
.public-button--gold { color: var(--public-ink) !important; background: var(--public-gold); border-color: var(--public-gold); }
.public-button--gold:hover { background: var(--public-gold-strong); border-color: var(--public-gold-strong); }
.public-button--quiet { color: var(--public-ink) !important; background: transparent; border-color: var(--public-line); }
.public-button--quiet:hover { border-color: var(--public-gold); background: var(--public-gold-pale); }
.public-button--outline-light { color: #fff !important; background: transparent; border-color: rgba(255,255,255,.7); }
.public-button--outline-light:hover { color: var(--public-ink) !important; background: #fff; }
.public-button--light { color: var(--public-ink) !important; background: #fff; border-color: #fff; }
.public-button--disabled { color: #7e7668 !important; background: #ebe6dc; border-color: #ebe6dc; cursor: not-allowed; pointer-events: none; }
.public-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.public-actions--center { justify-content: center; }

.public-eyebrow { margin-bottom: 12px; color: var(--public-gold-strong); font-size: 11px; font-weight: 700; letter-spacing: .25em; text-transform: uppercase; }
.public-eyebrow--light { color: var(--public-gold); }
.public-section { padding: 112px 0; }
.public-section--story { background: #fff; }
.public-section--soft, .public-section--values { background: var(--public-cream); }
.public-section--dark { color: #fff; background: var(--public-dark); }
.public-section-heading { max-width: 720px; margin-bottom: 48px; }
.public-section-heading--center { margin-right: auto; margin-left: auto; text-align: center; }
.public-section-heading h2, .public-story-copy h2, .public-faq-copy h2, .public-contact-form-wrap h2, .public-founder-copy h2, .public-image-split__copy h2 { margin-bottom: 18px; font-size: clamp(2.2rem, 4.2vw, 4rem); }
.public-section-heading p:last-child, .public-story-copy > p, .public-faq-copy > p, .public-contact-form-wrap > p, .public-founder-copy > p, .public-image-split__copy > p { color: var(--public-muted); font-size: 16px; }
.public-section--dark p { color: #d4cdbd; }

.public-hero { min-height: 690px; display: grid; position: relative; align-items: center; color: #fff; background-color: var(--public-dark); background-image: var(--public-hero-image); background-position: center; background-size: cover; }
.public-hero__scrim { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(15, 13, 9, .84), rgba(15, 13, 9, .46) 55%, rgba(15, 13, 9, .3)); }
.public-hero__inner { position: relative; z-index: 1; max-width: 1040px; padding: 96px 0; text-align: center; }
.public-hero__inner h1 { max-width: 1000px; margin: 0 auto 22px; font-size: clamp(3.2rem, 6.2vw, 6rem); }
.public-hero__inner h1 em { color: var(--public-gold); }
.public-hero__lede { max-width: 700px; margin: 0 auto 30px; color: rgba(255,255,255,.86); font-size: clamp(1rem, 1.6vw, 1.25rem); }
.public-hero__inner .public-actions { justify-content: center; }

.public-page-banner { min-height: 375px; display: grid; position: relative; align-items: center; background-color: var(--public-soft); background-image: linear-gradient(90deg, var(--public-cream) 0%, rgba(251,249,244,.97) 34%, rgba(251,249,244,.1) 76%), var(--public-banner-image); background-position: center; background-size: cover; }
.public-page-banner__inner { position: relative; z-index: 1; padding: 70px 0; }
.public-page-banner h1 { max-width: 650px; margin-bottom: 24px; font-size: clamp(2.8rem, 5vw, 5.2rem); }
.public-breadcrumbs { display: inline-flex; align-items: center; gap: 11px; padding: 11px 16px; color: #fff; background: var(--public-dark); border-radius: 5px; font-size: 13px; }
.public-breadcrumbs a { color: var(--public-gold); text-decoration: none; }

.public-story-grid, .public-faq-grid, .public-contact-grid, .public-founder-grid, .public-image-split, .public-workflow-grid, .public-download-guide { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: clamp(48px, 8vw, 112px); }
.public-collage { min-height: 535px; position: relative; }
.public-collage__main { position: absolute; inset: 0 13% 5% 0; border-radius: 48% 25% 48% 24% / 28% 30% 45% 35%; background-position: center; background-size: cover; box-shadow: var(--public-shadow); }
.public-collage__circle { position: absolute; border: 12px solid #fff; border-radius: 50%; background-position: center; background-size: cover; box-shadow: 0 10px 24px rgba(40,32,16,.13); }
.public-collage__circle--one { width: 166px; height: 166px; right: 0; bottom: 16%; }
.public-collage__circle--two { width: 98px; height: 98px; right: 23%; bottom: -2%; }
.public-story-copy { max-width: 600px; }
.public-story-copy > p { max-width: 580px; }
.public-story-copy .public-button { margin-top: 12px; }

.public-card-grid { display: grid; gap: 20px; }
.public-card-grid--three { grid-template-columns: repeat(3, 1fr); }
.public-feature-card, .public-value-card, .public-resource-card { min-height: 300px; padding: 34px 30px; border: 1px solid var(--public-line); border-radius: 22px; background: #fff; box-shadow: 0 10px 26px rgba(40,32,16,.04); }
.public-feature-card { display: flex; flex-direction: column; }
.public-icon-disc, .public-value-icon { width: 74px; height: 74px; display: grid; place-items: center; margin-bottom: 23px; color: var(--public-ink); background: var(--public-gold-pale); border-radius: 50%; font-size: 29px; }
.public-feature-card h3, .public-value-card h3, .public-resource-card h3, .public-role-card h3, .public-solution-card h3, .public-download-card h3 { margin-bottom: 13px; font-family: var(--public-serif); font-size: 1.55rem; }
.public-feature-card p, .public-value-card p, .public-resource-card p, .public-role-card p, .public-solution-card p, .public-download-card p { color: var(--public-muted); font-size: 15px; }
.public-feature-card a, .public-resource-card a, .public-solution-card a { display: inline-flex; align-items: center; gap: 8px; margin-top: auto; color: var(--public-gold-strong); font-size: 13px; font-weight: 700; text-decoration: none; }
.public-feature-card, .public-value-card, .public-resource-card, .public-role-card, .public-solution-card, .public-download-card { border-bottom: 4px solid var(--public-gold); }
.public-value-card { text-align: center; }
.public-value-icon { margin-right: auto; margin-left: auto; }

.public-split-heading { display: grid; grid-template-columns: 1.1fr .9fr; align-items: end; gap: 80px; margin-bottom: 48px; }
.public-split-heading h2 { max-width: 720px; margin: 0; font-size: clamp(2.3rem, 4.5vw, 4.7rem); }
.public-split-heading > p { max-width: 440px; margin: 0 0 5px; font-size: 17px; }
.public-role-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.public-role-card { min-height: 230px; padding: 28px 24px; background: var(--public-dark-soft); border-color: rgba(201,162,39,.65); border-radius: 20px; }
.public-role-card > i { display: inline-block; margin-bottom: 26px; color: var(--public-gold); font-size: 31px; }
.public-role-card h3 { font-size: 1.35rem; }
.public-role-card p { color: #cec5b2; }

.public-faq-grid { align-items: stretch; }
.public-faq-image, .public-contact-image, .public-image-split__image { min-height: 560px; border-radius: 32px; background-position: center; background-size: cover; box-shadow: var(--public-shadow); }
.public-faq-copy { align-self: center; }
.public-accordion { margin: 26px 0 25px; }
.public-accordion details { margin-bottom: 12px; padding: 0 20px; border: 1px solid var(--public-line); border-radius: 15px; background: #fff; }
.public-accordion summary { display: flex; align-items: center; justify-content: space-between; gap: 22px; min-height: 68px; color: var(--public-ink); cursor: pointer; font-family: var(--public-serif); font-size: 16px; list-style: none; }
.public-accordion summary::-webkit-details-marker { display: none; }
.public-accordion summary::after { content: "\\F282"; color: var(--public-gold-strong); font-family: bootstrap-icons; font-size: 16px; transition: transform .2s ease; }
.public-accordion details[open] summary::after { transform: rotate(180deg); }
.public-accordion details p { max-width: 650px; margin: -3px 0 20px; color: var(--public-muted); font-size: 14px; }

.public-contact-cta { padding: 74px 0; color: #fff; background: var(--public-dark); }
.public-contact-cta__inner { display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.public-contact-cta h2 { max-width: 780px; margin-bottom: 10px; font-size: clamp(2rem, 4vw, 4rem); }
.public-contact-cta p:last-child { max-width: 650px; margin: 0; color: #d5cdbd; }

.public-founder-grid { gap: 80px; }
.public-founder-copy blockquote { margin: 30px 0 0; padding: 24px 28px; color: var(--public-ink); background: var(--public-gold-pale); border-left: 4px solid var(--public-gold); font-family: var(--public-serif); font-size: 20px; }
.public-portrait { width: min(100%, 500px); aspect-ratio: 1; justify-self: center; border: 18px solid var(--public-gold); border-radius: 50%; background-position: center; background-size: cover; box-shadow: var(--public-shadow); }
.public-image-split__copy { max-width: 560px; }
.public-image-split__copy .public-button { margin-top: 12px; }

.public-feature-detail-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.public-feature-detail { display: grid; grid-template-columns: 78px 1fr; gap: 22px; padding: 32px; border: 1px solid var(--public-line); border-radius: 22px; background: #fff; border-bottom: 4px solid var(--public-gold); }
.public-feature-detail .public-icon-disc { margin: 0; }
.public-feature-detail h3 { margin: 2px 0 12px; font-family: var(--public-serif); font-size: 1.55rem; }
.public-feature-detail p { color: var(--public-muted); font-size: 14px; }
.public-feature-detail ul { margin: 14px 0 0; padding-left: 19px; color: var(--public-muted); font-size: 13px; }
.public-feature-detail li + li { margin-top: 5px; }

.public-solution-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.public-solution-card { min-height: 310px; display: flex; flex-direction: column; padding: 30px 24px; border: 1px solid var(--public-line); border-radius: 22px; background: #fff; }
.public-solution-card > i { margin-bottom: 28px; color: var(--public-gold-strong); font-size: 33px; }
.public-workflow-grid { align-items: start; }
.public-workflow-grid > div h2 { max-width: 620px; font-size: clamp(2.3rem, 4.8vw, 4.8rem); }
.public-workflow-grid > div p { max-width: 540px; font-size: 16px; }
.public-step-list { display: grid; gap: 16px; margin: 0; padding: 0; list-style: none; }
.public-step-list li { display: grid; grid-template-columns: 58px 1fr; gap: 17px; align-items: start; padding-bottom: 17px; border-bottom: 1px solid rgba(255,255,255,.18); }
.public-step-list li:last-child { padding-bottom: 0; border-bottom: 0; }
.public-step-list li > span { color: var(--public-gold); font: 700 16px var(--public-serif); }
.public-step-list h3 { margin: 0 0 4px; font: 700 17px var(--public-sans); }
.public-step-list p { margin: 0; color: #d4cdbd; font-size: 14px; }
.public-step-list--light li { border-color: var(--public-line); }
.public-step-list--light li > span { color: var(--public-gold-strong); }
.public-step-list--light h3 { color: var(--public-ink); }
.public-step-list--light p { color: var(--public-muted); }

.public-resource-card { display: flex; flex-direction: column; }
.public-resource-card .public-icon-disc { flex: 0 0 auto; }
.public-faq-copy--wide { max-width: 850px; margin: 0 auto; }
.public-trust-strip { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.public-trust-strip > div { display: flex; flex-direction: column; align-items: center; gap: 12px; color: var(--public-ink); text-align: center; }
.public-trust-strip i { color: var(--public-gold-strong); font-size: 39px; }

.public-contact-grid { align-items: stretch; }
.public-contact-form-wrap { padding: 43px; background: var(--public-soft); border-radius: 28px; }
.public-form-row { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.public-contact-form > div, .public-form-row > div { margin-bottom: 17px; }
.public-contact-form label { display: block; margin-bottom: 7px; color: var(--public-ink); font-size: 13px; font-weight: 700; }
.public-form-control { width: 100%; padding: 13px 14px; color: var(--public-ink); background: #fff; border: 1px solid var(--public-line); border-radius: 10px; outline: 0; }
.public-form-control:focus { border-color: var(--public-gold); box-shadow: 0 0 0 3px rgba(201,162,39,.18); }
.public-form-submit { width: 100%; margin-top: 4px; }
.public-form-error { display: block; margin-top: 5px; color: #a23620; font-size: 12px; }
.public-flash-stack { padding-top: 18px; }
.public-flash { padding: 13px 16px; border-left: 4px solid var(--public-gold); border-radius: 8px; background: var(--public-gold-pale); }

.public-download-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.public-download-card { min-height: 310px; display: flex; flex-direction: column; padding: 30px 25px; border: 1px solid var(--public-line); border-radius: 22px; background: #fff; }
.public-download-card--featured { background: var(--public-dark); }
.public-download-card--featured h3 { color: #fff; }
.public-download-card--featured p { color: #d4cdbd; }
.public-download-card__icon { width: 64px; height: 64px; display: grid; place-items: center; margin-bottom: 25px; color: var(--public-ink); background: var(--public-gold-pale); border-radius: 50%; font-size: 28px; }
.public-download-card__actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: auto; }
.public-download-card > .public-button { margin-top: auto; }
.public-download-guide { align-items: start; }
.public-download-guide .public-section-heading { margin: 0; }

.public-product-intro { padding-top: 78px; padding-bottom: 78px; }
.public-product-intro__inner { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr); gap: 70px; align-items: center; }
.public-product-intro h2 { max-width: 820px; margin: 0; font-size: clamp(2.2rem, 4.2vw, 4.2rem); }
.public-product-status { display: flex; align-items: flex-start; gap: 13px; padding: 23px; color: var(--public-ink); background: #fff; border: 1px solid var(--public-line); border-left: 4px solid var(--public-gold); border-radius: 16px; box-shadow: 0 10px 25px rgba(40,32,16,.05); font-size: 14px; }
.public-product-status i { flex: 0 0 auto; color: var(--public-gold-strong); font-size: 23px; }
.public-product-sections { display: grid; gap: 0; }
.public-product-section { display: grid; grid-template-columns: 86px minmax(0, 1fr); gap: 28px; padding: 48px 0; border-bottom: 1px solid var(--public-line); }
.public-product-section:first-child { padding-top: 0; }
.public-product-section:last-child { border-bottom: 0; }
.public-product-section__number { color: var(--public-gold-strong); font: 700 18px var(--public-serif); }
.public-product-section h2 { max-width: 760px; margin-bottom: 15px; font-size: clamp(1.8rem, 3vw, 3.1rem); }
.public-product-section p { max-width: 820px; color: var(--public-muted); font-size: 16px; }
.public-product-section ul { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px 22px; margin: 22px 0 0; padding: 0; list-style: none; color: var(--public-muted); font-size: 14px; }
.public-product-section li { display: flex; gap: 8px; align-items: flex-start; }
.public-product-section li i { flex: 0 0 auto; color: var(--public-gold-strong); }
.public-resource-article { max-width: 820px; margin: 0 auto; }
.public-resource-article__meta { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 22px; color: var(--public-gold-strong); font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.public-resource-article h1 { margin-bottom: 22px; font-size: clamp(2.5rem, 5vw, 5rem); }
.public-resource-article__summary { margin-bottom: 50px; color: var(--public-muted); font-size: 20px; }
.public-resource-article__section { padding: 28px 0; border-top: 1px solid var(--public-line); }
.public-resource-article__section h2 { margin-bottom: 12px; font-size: clamp(1.7rem, 3vw, 2.6rem); }
.public-resource-article__section p { color: var(--public-muted); font-size: 16px; }
.public-resource-sources { margin-top: 45px; padding: 25px; background: var(--public-cream); border-radius: 18px; }
.public-resource-sources h2 { font-size: 1.5rem; }
.public-resource-sources a { display: block; margin-top: 8px; color: var(--public-gold-strong); font-size: 14px; text-decoration: none; }
.public-integration-notice { padding: 18px 20px; color: var(--public-ink); background: var(--public-gold-pale); border-left: 4px solid var(--public-gold); border-radius: 12px; }

.public-footer { color: var(--public-muted); background: var(--public-soft); }
.public-footer__grid { display: grid; grid-template-columns: 1.5fr repeat(3, 1fr); gap: 0; padding: 74px 0 64px; }
.public-footer__grid > section { min-height: 200px; padding: 0 30px; border-left: 1px solid #d8cfbf; }
.public-footer__grid > section:first-child { padding-left: 0; border-left: 0; }
.public-footer__grid h2 { margin: 5px 0 23px; color: var(--public-ink); font: 700 19px var(--public-serif); }
.public-footer__grid section:not(:first-child) a { display: block; margin-bottom: 11px; font-size: 13px; text-decoration: none; }
.public-footer__grid section:not(:first-child) a:hover { color: var(--public-gold-strong); }
.public-footer__brand > p { max-width: 310px; margin: 22px 0; font-size: 14px; }
.public-socials { display: flex; gap: 9px; }
.public-socials a { width: 34px; height: 34px; display: grid !important; place-items: center; margin: 0 !important; color: var(--public-ink); border: 1px solid var(--public-ink); border-radius: 50%; }
.public-socials a:hover { color: var(--public-gold-strong); border-color: var(--public-gold); }
.public-footer__contact-note { max-width: 220px; margin: 20px 0 0; font-size: 12px; }
.public-footer__bar { padding: 15px 0; color: #fff; background: var(--public-dark); font-size: 12px; }
.public-footer__bar .public-container { display: flex; justify-content: space-between; gap: 20px; }

.public-side-rail { position: fixed; z-index: 30; top: 50%; display: flex; flex-direction: column; width: 128px; color: #fff; background: linear-gradient(180deg, #241f16, #11100d); border: 1px solid rgba(201,162,39,.62); box-shadow: 0 16px 35px rgba(20,16,8,.2); transform: translateY(-50%); }
.public-side-rail a { display: flex; min-height: 92px; flex-direction: column; align-items: center; justify-content: center; gap: 7px; padding: 12px 10px; color: #fff; text-align: center; text-decoration: none; }
.public-side-rail a + a { border-top: 1px solid rgba(255,255,255,.2); }
.public-side-rail i { color: var(--public-gold); font-size: 23px; }
.public-side-rail strong { font-size: 12px; }
.public-side-rail span { color: #d2c9b7; font-size: 10px; }
.public-side-rail--left a { min-height: 228px; gap: 11px; }
.public-side-rail--left { left: 17px; border-radius: 0 0 56px 56px; }
.public-side-rail--right { right: 17px; border-radius: 50px 50px 0 0; }
.public-side-rail--right a { min-height: 112px; }
.public-utilities { position: fixed; z-index: 31; right: 22px; bottom: 20px; display: flex; align-items: center; gap: 9px; }
.public-utilities button { width: 42px; height: 42px; display: grid; place-items: center; color: var(--public-ink); background: #fff; border: 1px solid var(--public-line); border-radius: 50%; box-shadow: 0 6px 17px rgba(30,24,14,.14); cursor: pointer; }
.public-utilities button:hover { color: var(--public-ink); border-color: var(--public-gold); background: var(--public-gold-pale); }
.public-utilities .public-stop-animations { width: auto; min-width: 124px; display: inline-flex; gap: 6px; padding: 0 13px; border-radius: 999px; font-size: 11px; font-weight: 700; }
.public-a11y-panel { position: fixed; z-index: 35; right: 22px; bottom: 74px; width: 190px; padding: 15px; border: 1px solid var(--public-line); border-radius: 14px; background: #fff; box-shadow: var(--public-shadow); }
.public-a11y-panel strong { display: block; margin-bottom: 10px; }
.public-a11y-panel button { width: 100%; margin-top: 6px; padding: 7px 9px; color: var(--public-ink); background: var(--public-cream); border: 1px solid var(--public-line); border-radius: 7px; cursor: pointer; text-align: left; }
.public-a11y-panel button:hover { border-color: var(--public-gold); }
.public-site--large-text { font-size: 112%; }
.public-site--high-contrast { --public-muted: #28231a; --public-line: #8a7c60; }

.public-reveal { opacity: 0; transform: translateY(24px); transition: opacity .6s ease, transform .6s ease; }
.public-reveal--left { transform: translateX(-28px); }
.public-reveal--right { transform: translateX(28px); }
.public-reveal--scale { transform: scale(.97); }
.public-reveal.is-visible { opacity: 1; transform: none; }
.public-reveal--stagger:nth-child(2) { transition-delay: .08s; }.public-reveal--stagger:nth-child(3) { transition-delay: .16s; }.public-reveal--stagger:nth-child(4) { transition-delay: .24s; }.public-reveal--stagger:nth-child(5) { transition-delay: .32s; }.public-reveal--stagger:nth-child(6) { transition-delay: .4s; }
.public-site--animations-stopped .public-reveal, .public-site--animations-stopped .public-reveal.is-visible { opacity: 1; transform: none; transition: none !important; }
.public-site--animations-stopped *, .public-site--animations-stopped *::before, .public-site--animations-stopped *::after { animation-play-state: paused !important; }
@media (prefers-reduced-motion: reduce) { .public-reveal, .public-reveal.is-visible { opacity: 1; transform: none; transition: none; } *, *::before, *::after { scroll-behavior: auto !important; } }

@media (max-width: 1280px) { .public-container { width: min(var(--public-container), calc(100% - 150px)); }.public-navigation { gap: 16px; }.public-navigation > a { font-size: 12px; }.public-side-rail--left { left: 8px; }.public-side-rail--right { right: 8px; } }
@media (max-width: 1050px) { .public-navigation { gap: 12px; }.public-navigation__actions { margin-left: 0; }.public-card-grid--three, .public-feature-detail-grid { grid-template-columns: repeat(2, 1fr); }.public-role-grid, .public-solution-grid { grid-template-columns: repeat(2, 1fr); }.public-download-grid { grid-template-columns: repeat(2, 1fr); }.public-footer__grid { grid-template-columns: repeat(2, 1fr); }.public-footer__grid > section:nth-child(3) { border-left: 0; padding-left: 0; margin-top: 35px; }.public-footer__grid > section:nth-child(4) { margin-top: 35px; } }
@media (max-width: 1050px) { .public-side-rail { display: none; } }
@media (max-width: 820px) { .public-container { width: min(100% - 40px, 680px); }.public-header__inner { min-height: 68px; }.public-header { min-height: 68px; }.public-brand { min-width: 0; }.public-brand img { width: 40px; height: 40px; }.public-brand strong { font-size: 17px; }.public-menu-toggle { display: block; }.public-navigation { position: absolute; top: calc(100% + 1px); right: 20px; left: 20px; display: none; flex-direction: column; align-items: stretch; gap: 0; padding: 10px; background: #fff; border: 1px solid var(--public-line); border-radius: 0 0 16px 16px; box-shadow: var(--public-shadow); }.public-navigation.is-open { display: flex; }.public-navigation > a { padding: 12px 10px; }.public-navigation > a::after { bottom: 6px; left: 10px; transform-origin: left; }.public-navigation__actions { display: flex; margin-top: 7px; padding-top: 10px; border-top: 1px solid var(--public-line); }.public-navigation__actions .public-button { flex: 1; }.public-hero { min-height: 600px; }.public-hero__inner { padding: 75px 0; }.public-story-grid, .public-faq-grid, .public-contact-grid, .public-founder-grid, .public-image-split, .public-workflow-grid, .public-download-guide { grid-template-columns: 1fr; gap: 48px; }.public-collage { min-height: 430px; }.public-faq-image, .public-contact-image, .public-image-split__image { min-height: 410px; }.public-split-heading { grid-template-columns: 1fr; gap: 15px; }.public-split-heading > p { margin: 0; }.public-contact-cta__inner { flex-direction: column; align-items: flex-start; }.public-footer__bar .public-container { flex-direction: column; gap: 4px; }.public-utilities { right: 14px; bottom: 14px; }.public-utilities .public-stop-animations { min-width: 42px; width: 42px; padding: 0; }.public-utilities .public-stop-animations span { display: none; }.public-a11y-panel { right: 14px; bottom: 66px; } }
@media (max-width: 560px) { .public-section { padding: 76px 0; }.public-hero__inner h1 { font-size: clamp(2.8rem, 13vw, 4.3rem); }.public-page-banner { min-height: 310px; background-image: linear-gradient(90deg, var(--public-cream) 0%, rgba(251,249,244,.88) 62%, rgba(251,249,244,.1) 100%), var(--public-banner-image); }.public-page-banner__inner { padding: 55px 0; }.public-page-banner h1 { font-size: clamp(2.5rem, 12vw, 4rem); }.public-card-grid--three, .public-feature-detail-grid, .public-role-grid, .public-solution-grid, .public-download-grid, .public-trust-strip { grid-template-columns: 1fr; }.public-feature-card, .public-value-card, .public-resource-card, .public-download-card { min-height: 0; }.public-collage { min-height: 340px; }.public-collage__circle--one { width: 122px; height: 122px; border-width: 8px; }.public-collage__circle--two { width: 74px; height: 74px; border-width: 6px; }.public-contact-form-wrap { padding: 28px 22px; }.public-form-row { grid-template-columns: 1fr; gap: 0; }.public-footer__grid { grid-template-columns: 1fr; padding: 54px 0 38px; }.public-footer__grid > section, .public-footer__grid > section:nth-child(3), .public-footer__grid > section:nth-child(4) { min-height: 0; margin: 0; padding: 24px 0 0; border-top: 1px solid #d8cfbf; border-left: 0; }.public-footer__grid > section:first-child { padding-top: 0; border-top: 0; }.public-footer__grid h2 { margin-bottom: 14px; }.public-portrait { border-width: 10px; }.public-contact-cta { padding: 58px 0; }.public-utilities { gap: 6px; }.public-utilities button { width: 38px; height: 38px; } }
@media (max-width: 820px) { .public-product-intro__inner { grid-template-columns: 1fr; gap: 28px; }.public-product-section { grid-template-columns: 1fr; gap: 13px; padding: 36px 0; }.public-product-section__number { font-size: 15px; }.public-product-section ul { grid-template-columns: 1fr; }.public-resource-article__summary { font-size: 17px; } }
