.zj, .zj-page {
    --zj-ink: #141515;
    --zj-quiet: #525852;
    --zj-accent: #e0fb5a;
    --zj-line: #dfe1d8;
    --zj-paper: #f5f6f0;
    color: var(--zj-ink);
    font-family: "Geist", "Inter", system-ui, -apple-system, sans-serif;
    line-height: 1.55;
}
.zj *, .zj-page * { box-sizing: border-box; }
.zj [hidden], .zj-page [hidden] { display: none !important; }
.zj a, .zj-page a { color: inherit; }
.zj :focus-visible, .zj-page :focus-visible { outline: 3px solid #527707; outline-offset: 4px; }
.zj h1, .zj h2, .zj-page h2 { letter-spacing: -.048em; font-weight: 750; line-height: 1.06; margin: 0 0 .55em; }
.zj h2, .zj-page h2 { font-size: clamp(26px, 4vw, 42px); }
.zj p, .zj-page p { margin: 0 0 1em; }
.zj-preview #header, .zj-preview .top-navigation-bar { display: none; }
.zj-preview .zj-preview-nav { background: #fff; border-bottom: 1px solid var(--zj-line); }
.zj-preview-nav { display: flex; justify-content: space-between; gap: 16px; align-items: center; padding: 15px max(4vw, 14px); flex-wrap: wrap; }
.zj-preview-nav img { width: 174px; height: auto; display: block; }
.zj-preview-nav > div { display: flex; gap: 6px clamp(12px, 2.6vw, 30px); flex-wrap: wrap; }
.zj-preview-nav a { display: inline-flex; align-items: center; min-height: 40px; color: var(--zj-ink); text-decoration: none; font-size: 14px; font-weight: 650; }
.zj-preview-nav a:hover, .zj-bottom a:hover { text-decoration: underline; }
.zj-custom-home #content { width: 100%; padding: 0; }
.zj-custom-home .content-wrapper-in { display: block; }
.zj-preview.zj-custom-home .carousel-wrapper,
.zj-preview.zj-custom-home .banners-row,
.zj-preview.zj-custom-home .benefitBanner { display: none; }
.zj-home { max-width: 1240px; margin: 0 auto; padding: clamp(12px, 2.7vw, 32px); }
.zj-hero { position: relative; display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); align-items: stretch; min-height: 460px; overflow: hidden; background: #181a18; color: #fafbf6; }
.zj-hero-copy { z-index: 1; padding: clamp(26px, 6.4vw, 86px); align-self: center; }
.zj-kicker { font-size: 12px; text-transform: uppercase; font-weight: 750; letter-spacing: .10em; }
.zj-hero .zj-kicker { color: var(--zj-accent); margin-bottom: 1.5em; }
.zj-hero h1 { font-size: clamp(48px, 7.5vw, 106px); line-height: .94; margin: 0 0 .28em; color: #fafbf6; }
.zj-hero-copy > p:nth-of-type(2) { color: #dce0d7; max-width: 34ch; font-size: clamp(16px, 2.25vw, 20px); margin-bottom: 1.4em; }
.zj-hero-brand { display: grid; place-items: center; min-width: 0; margin: clamp(16px, 2.5vw, 35px); border: 1px solid #4c5146; background: #222620; }
.zj-hero-brand img { display: block; object-fit: contain; width: min(66%, 245px); height: auto; filter: invert(1); opacity: .87; }
.zj-button, .zj-outline { border: 0; cursor: pointer; display: inline-flex; justify-content: space-between; align-items: center; min-height: 48px; gap: 18px; padding: 10px 17px; color: #131812 !important; background: var(--zj-accent); font: inherit; font-size: 15px; font-weight: 750; text-decoration: none !important; }
.zj-button:not(:disabled):hover { background: #c7ed2d; }
.zj-button:disabled { opacity: .56; cursor: default; }
.zj-outline { background: transparent; border: 1px solid #8d9384; }
.zj-outline:hover { background: #e8ebe0; }
.zj-section { margin-top: clamp(30px, 5.7vw, 76px); }
.zj-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.zj-links a { position: relative; display: grid; align-content: start; gap: 9px; min-height: 118px; padding: 19px 38px 20px 19px; background: var(--zj-paper); border: 1px solid var(--zj-line); text-decoration: none; }
.zj-links a:hover { border-color: #7c8e5f; background: #f0f4e2; }
.zj-links a strong { font-size: 20px; line-height: 1.15; }
.zj-links a span, .zj-page .zj-intro { color: var(--zj-quiet); }
.zj-links i { position: absolute; right: 16px; top: 16px; font-style: normal; }
.zj-button > span, .zj-outline > span, .zj-links i { font-size: 0; display: inline-block; flex: 0 0 11px; width: 11px; height: 11px; border-top: 1.5px solid; border-right: 1.5px solid; }
.zj-button > span::after, .zj-outline > span::after, .zj-links i::after { content: ""; display: block; width: 13px; border-top: 1.5px solid; transform: rotate(-45deg) translate(-2px, 3px); }
.zj-handover { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 14px 24px; padding: clamp(22px, 4vw, 50px); background: var(--zj-paper); }
.zj-handover div { max-width: 64ch; }
.zj-handover p { margin-bottom: 0; }
.zj-faq details, .zj-compare { padding: 11px 0; border-top: 1px solid var(--zj-line); }
.zj-faq details:last-child { border-bottom: 1px solid var(--zj-line); }
.zj summary { cursor: pointer; padding: 7px 0; font-weight: 700; }
.zj-faq details p { margin: .35em 0 .8em; }
.zj-bottom { display: flex; flex-wrap: wrap; gap: 14px 26px; border-top: 1px solid var(--zj-line); padding: 16px 0; font-weight: 650; }
.zj-page { max-width: 1024px; font-size: 16px; }
.zj-page h2 { margin-top: 1.15em; }
.zj-page .zj-intro { max-width: 68ch; font-size: 18px; }
.zj-page a { text-underline-offset: .21em; }
.zj-config { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .85fr); gap: 16px; background: var(--zj-paper); padding: clamp(14px, 3vw, 32px); margin: 23px 0; border: 1px solid var(--zj-line); }
.zj-controls { display: grid; gap: 13px; align-content: start; }
.zj-controls label { display: grid; gap: 6px; font-size: 14px; font-weight: 700; }
.zj-controls select { width: 100%; max-width: 100%; min-height: 46px; padding: 7px 11px; background-color: #fff; color: var(--zj-ink); border: 1px solid #a1a69b; border-radius: 0; font: inherit; font-size: 16px; font-weight: 500; }
.zj-controls select:disabled { opacity: .68; }
.zj-result { align-self: start; border: 1px solid var(--zj-line); background: #fff; padding: clamp(15px, 2.7vw, 28px); }
.zj-result .zj-kicker { margin: 0 0 .55em; }
.zj-result .zj-price { font-size: clamp(23px, 3.1vw, 40px); font-weight: 760; letter-spacing: -.045em; line-height: 1.06; margin: 0 0 .3em; }
.zj-result .zj-price-info { font-size: 14px; color: var(--zj-quiet); margin: 0 0 1em; }
.zj-result .zj-error:empty { display: none; }
.zj-result .zj-error { margin: .65em 0 0; }
.zj-compare { margin: 10px 0; }
.zj-compare dl { margin: 5px 0 12px; }
.zj-compare dt { font-weight: 700; }
.zj-compare dd { margin: 3px 0 12px; }
.zj-compare a { font-size: 13px; }
.zj-request { scroll-margin-top: 35px; }
.zj-request textarea { min-height: 210px; }
.zj-preview:has(.zj-page) .content-wrapper-in { display: block; }
.zj-preview:has(.zj-page) #content { width: 100%; max-width: none; }
.zj-preview:has(.zj-page) #sidebar { display: none; }
@media (max-width: 720px) {
    .zj-hero { grid-template-columns: minmax(0, 1fr); min-height: 0; }
    .zj-hero-brand { display: none; }
    .zj-hero-copy { padding: 36px 22px 43px; }
    .zj-links, .zj-config { grid-template-columns: minmax(0, 1fr); }
    .zj-links a { min-height: 0; padding: 14px 36px 14px 14px; gap: 4px; }
    .zj-preview-nav { gap: 4px 15px; }
    .zj-preview-nav img { width: 152px; }
    .zj-preview-nav > div { gap: 0 12px; }
}
