:root {
  --zt-blue: #1548ff;
  --zt-blue-dark: #0c36d8;
  --zt-ink: #081229;
  --zt-navy: #081124;
  --zt-muted: #526079;
  --zt-line: #d9e4f2;
  --zt-sky: #eef7ff;
  --zt-white: #fff;
  --zt-radius: 24px;
  --zt-shadow: 0 24px 70px rgba(24, 56, 104, 0.13);
  --zt-font: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 88px; }
body.zt-body { margin: 0; color: var(--zt-ink); background: #fff; font-family: var(--zt-font); font-size: 16px; line-height: 1.6; overflow-x: hidden; }
img { max-width: 100%; height: auto; }
a { color: inherit; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
[hidden] { display: none !important; }

.zt-sr-only,
.zt-honeypot { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }
.zt-skip-link { position: fixed; z-index: 9999; top: 8px; left: 8px; padding: 10px 14px; color: #fff; background: #000; transform: translateY(-140%); }
.zt-skip-link:focus { transform: translateY(0); }
:focus-visible { outline: 3px solid #ff9700; outline-offset: 3px; }

.zt-site-header { position: sticky; z-index: 5000; top: 0; color: #fff; background: var(--zt-navy); }
.zt-header-inner { width: min(1180px, calc(100% - 36px)); min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 28px; margin: 0 auto; }
.zt-logo { display: inline-flex; align-items: center; gap: 9px; color: #fff; text-decoration: none; }
.zt-logo > span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 10px; color: #fff; background: var(--zt-blue); font-size: 17px; font-weight: 900; }
.zt-logo strong { font-size: 16px; letter-spacing: -0.02em; }
.zt-primary-nav { display: flex; align-items: center; gap: 26px; }
.zt-primary-nav a { color: #dbe5f5; font-size: 14px; font-weight: 750; text-decoration: none; }
.zt-primary-nav a:hover { color: #fff; }
.zt-primary-nav .zt-nav-cta { padding: 11px 16px; border-radius: 10px; color: #fff; background: var(--zt-blue); }
.zt-menu-toggle { display: none; width: 44px; height: 44px; border: 0; border-radius: 10px; color: #fff; background: rgba(255,255,255,.08); cursor: pointer; }
.zt-menu-icon,
.zt-menu-icon::before,
.zt-menu-icon::after { width: 20px; height: 2px; display: block; border-radius: 999px; background: currentColor; }
.zt-menu-icon { position: relative; margin: auto; }
.zt-menu-icon::before,
.zt-menu-icon::after { content: ""; position: absolute; left: 0; }
.zt-menu-icon::before { top: -6px; }
.zt-menu-icon::after { top: 6px; }

.zt-hero { position: relative; min-height: 780px; display: grid; align-items: center; padding: clamp(76px, 8vw, 116px) 0 210px; background: radial-gradient(circle at 70% 22%, rgba(21,72,255,.1), transparent 30%), linear-gradient(145deg, #fff 0%, #edf6ff 100%); overflow: hidden; }
.zt-hero-inner { position: relative; z-index: 2; width: min(1180px, calc(100% - 40px)); display: grid; grid-template-columns: minmax(0, .95fr) minmax(440px, 1.05fr); align-items: center; gap: clamp(44px, 7vw, 92px); margin: 0 auto; }
.zt-eyebrow { display: flex; align-items: center; gap: 10px; margin: 0 0 20px; color: var(--zt-blue); font-size: 12px; font-weight: 900; letter-spacing: .14em; line-height: 1.4; text-transform: uppercase; }
.zt-eyebrow > span { width: 28px; height: 3px; border-radius: 999px; background: var(--zt-blue); }
.zt-hero h1 { max-width: 650px; margin: 0; color: var(--zt-ink); font-size: clamp(3rem, 5vw, 5rem); font-weight: 560; letter-spacing: -.065em; line-height: .98; text-wrap: balance; }
.zt-hero-lead { max-width: 640px; margin: 28px 0 0; color: #15233b; font-size: clamp(16px, 1.4vw, 19px); line-height: 1.7; }
.zt-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.zt-button { min-height: 52px; display: inline-flex; align-items: center; justify-content: center; padding: 0 22px; border: 1px solid transparent; border-radius: 12px; font-weight: 850; line-height: 1.2; text-align: center; text-decoration: none; cursor: pointer; transition: transform 160ms ease, background-color 160ms ease, border-color 160ms ease; }
.zt-button:hover { transform: translateY(-2px); }
.zt-button-primary { color: #fff; background: var(--zt-blue); }
.zt-button-primary:hover { background: var(--zt-blue-dark); }
.zt-button-secondary { border-color: #d7e0ec; color: var(--zt-ink); background: rgba(255,255,255,.9); }
.zt-button-light { color: var(--zt-ink); background: #fff; }
.zt-button:disabled { opacity: .62; cursor: wait; transform: none; }
.zt-checks { display: flex; flex-wrap: wrap; gap: 12px 24px; margin: 26px 0 0; padding: 0; list-style: none; }
.zt-checks li { display: flex; align-items: center; gap: 8px; color: #2c3c58; font-size: 13px; font-weight: 800; }
.zt-checks li::before { content: "✓"; width: 21px; height: 21px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: var(--zt-blue); font-size: 12px; }

.zt-hero-product { position: relative; width: 100%; max-width: 540px; justify-self: end; padding: 22px; border: 1px solid #dce5f1; border-radius: 26px; background: rgba(255,255,255,.94); box-shadow: 0 36px 90px rgba(28, 58, 105, .18); }
.zt-product-top { display: flex; align-items: center; gap: 12px; }
.zt-product-mark { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 12px; color: #fff; background: var(--zt-blue); font-weight: 900; }
.zt-product-top div { display: grid; line-height: 1.15; }
.zt-product-top strong { font-size: 18px; }
.zt-product-top small { margin-top: 4px; color: var(--zt-muted); font-size: 12px; font-weight: 700; }
.zt-product-tabs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 18px; }
.zt-product-tabs > * { padding: 10px; border: 1px solid #d6e1ef; border-radius: 10px; color: #68758b; font-size: 11px; text-align: center; }
.zt-product-tabs b { border-color: var(--zt-blue); color: #fff; background: var(--zt-blue); }
.zt-product-map { position: relative; height: 170px; margin-top: 12px; border-radius: 16px; background-color: #eaf2fb; background-image: linear-gradient(#cfdfef 1px, transparent 1px), linear-gradient(90deg, #cfdfef 1px, transparent 1px); background-size: 34px 34px; overflow: hidden; }
.zt-map-road { position: absolute; top: 72px; left: -10%; width: 120%; height: 32px; display: block; background: #fff; transform: rotate(-9deg); }
.zt-map-area { position: absolute; top: 42px; left: 23%; width: 58%; height: 78px; border: 3px solid var(--zt-blue); border-radius: 52% 48% 54% 46%; background: rgba(21,72,255,.18); }
.zt-product-map em { position: absolute; top: 54px; right: 25%; width: 27px; height: 35px; border-radius: 50% 50% 50% 0; background: #ff9200; transform: rotate(-45deg); }
.zt-product-map em::after { content: ""; position: absolute; top: 8px; left: 8px; width: 11px; height: 11px; border-radius: 50%; background: #fff; }
.zt-product-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 12px; }
.zt-product-fields > span { display: grid; gap: 5px; padding: 13px; border: 1px solid #dbe5f1; border-radius: 12px; }
.zt-product-fields small { color: #6b7890; font-size: 11px; font-weight: 750; }
.zt-product-fields strong { font-size: 14px; }
.zt-product-status { display: flex; justify-content: space-between; gap: 12px; margin-top: 10px; padding: 11px 13px; border: 1px solid #cbd9ff; border-radius: 11px; color: #66758d; background: #f1f5ff; font-size: 11px; font-weight: 750; }
.zt-product-status strong { color: var(--zt-blue); }
.zt-product-progress { height: 7px; margin-top: 10px; border-radius: 999px; background: #e6edf5; overflow: hidden; }
.zt-product-progress i { width: 72%; height: 100%; display: block; border-radius: inherit; background: linear-gradient(90deg, var(--zt-blue), #08b9ef); }
.zt-product-quote { position: absolute; top: 152px; left: -95px; width: 235px; display: grid; gap: 8px; padding: 20px; border-radius: 20px; color: #fff; background: var(--zt-navy); box-shadow: 0 22px 48px rgba(5,15,36,.28); }
.zt-product-quote small { color: #aebbd0; font-size: 10px; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.zt-product-quote strong { font-size: 23px; }
.zt-product-quote span { padding: 10px; border-radius: 9px; background: var(--zt-blue); font-size: 12px; font-weight: 850; text-align: center; }

.zt-hero-nature { position: absolute; z-index: 1; inset: 0; pointer-events: none; }
.zt-tree { position: absolute; bottom: 17%; width: 170px; height: 255px; transform-origin: 50% 100%; animation: zt-tree-sway 5.5s ease-in-out infinite; }
.zt-tree::before { content: ""; position: absolute; bottom: 0; left: 50%; width: 20px; height: 145px; border-radius: 12px; background: #6887ba; transform: translateX(-50%); }
.zt-tree::after { content: ""; position: absolute; top: 8px; left: 50%; width: 142px; height: 118px; border-radius: 48% 52% 44% 56%; background: #91afe0; box-shadow: -35px 38px 0 -18px #a8c1e8, 38px 30px 0 -15px #769bd4; transform: translateX(-50%); }
.zt-tree-left { left: 1.5%; }
.zt-tree-right { right: 2%; width: 145px; height: 225px; animation-delay: -2.6s; }
.zt-leaf { position: absolute; width: 15px; height: 8px; border-radius: 100% 0 100% 0; background: #4d7ac1; opacity: .82; animation: zt-leaf-drift 8s linear infinite; }
.zt-leaf-one { top: 19%; left: 8%; }
.zt-leaf-two { top: 31%; left: 25%; animation-delay: -3s; }
.zt-leaf-three { top: 16%; left: 48%; animation-delay: -5.5s; }
.zt-leaf-four { top: 28%; right: 31%; animation-delay: -1.5s; }
.zt-leaf-five { top: 14%; right: 9%; animation-delay: -6.5s; }
.zt-leaf-six { top: 43%; right: 18%; animation-delay: -4s; }

.zt-lawn { position: absolute; z-index: 1; right: 0; bottom: 0; left: 0; height: clamp(180px, 25%, 230px); overflow: hidden; }
.zt-lawn i { position: absolute; right: -3%; bottom: -8%; left: -3%; height: 112%; display: block; background: #80a6dc; clip-path: polygon(0 100%,0 50%,1% 30%,2% 57%,3% 18%,4% 59%,5% 34%,6% 64%,7% 12%,8% 62%,9% 27%,10% 67%,11% 20%,12% 55%,13% 8%,14% 59%,15% 25%,16% 66%,17% 19%,18% 57%,19% 29%,20% 66%,21% 11%,22% 59%,23% 35%,24% 64%,25% 17%,26% 60%,27% 28%,28% 66%,29% 12%,30% 56%,31% 31%,32% 65%,33% 18%,34% 60%,35% 9%,36% 57%,37% 34%,38% 66%,39% 21%,40% 57%,41% 12%,42% 61%,43% 30%,44% 65%,45% 17%,46% 59%,47% 27%,48% 65%,49% 10%,50% 60%,51% 31%,52% 66%,53% 20%,54% 56%,55% 8%,56% 62%,57% 28%,58% 65%,59% 18%,60% 58%,61% 30%,62% 65%,63% 12%,64% 59%,65% 24%,66% 66%,67% 17%,68% 57%,69% 9%,70% 62%,71% 29%,72% 66%,73% 19%,74% 58%,75% 11%,76% 62%,77% 31%,78% 65%,79% 16%,80% 57%,81% 27%,82% 66%,83% 9%,84% 60%,85% 30%,86% 65%,87% 17%,88% 59%,89% 13%,90% 63%,91% 29%,92% 66%,93% 19%,94% 56%,95% 8%,96% 60%,97% 32%,98% 65%,99% 20%,100% 100%); animation: zt-grass-sway 4.8s ease-in-out infinite; }
.zt-lawn i:nth-child(2) { bottom: -25%; background: #416fae; animation-delay: -1.7s; }
.zt-lawn i:nth-child(3) { bottom: -41%; background: #173f79; animation-delay: -3.2s; }

@keyframes zt-tree-sway { 0%,100% { transform: rotate(-1.5deg); } 50% { transform: rotate(1.7deg); } }
@keyframes zt-leaf-drift { 0% { transform: translate3d(-10px,-8px,0) rotate(0deg); } 50% { transform: translate3d(24px,18px,0) rotate(190deg); } 100% { transform: translate3d(58px,48px,0) rotate(380deg); } }
@keyframes zt-grass-sway { 0%,100% { transform: translate3d(-.7%,0,0) skewX(-1deg) scaleX(1.03); } 50% { transform: translate3d(.7%,0,0) skewX(1deg) scaleX(1.03); } }

.zt-estimator-intro { padding: clamp(78px, 9vw, 124px) 0; background: var(--zt-sky); }
.zt-section-heading { width: min(960px, calc(100% - 40px)); margin: 0 auto 46px; text-align: center; }
.zt-section-heading .zt-eyebrow { justify-content: center; }
.zt-section-heading h2,
.zt-services h2,
.zt-story h2,
.zt-contact h2,
.zt-pricing h2 { margin: 0; color: var(--zt-ink); font-size: clamp(2.25rem, 4.2vw, 4.1rem); font-weight: 760; letter-spacing: -.055em; line-height: 1.02; text-wrap: balance; }
.zt-section-heading > p:last-child { max-width: 860px; margin: 22px auto 0; color: var(--zt-muted); font-size: 18px; line-height: 1.7; }
.zt-benefit-grid { width: min(1120px, calc(100% - 40px)); display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 16px; margin: 0 auto 36px; }
.zt-benefit-grid article { display: flex; min-height: 430px; flex-direction: column; padding: 28px; border: 1px solid var(--zt-line); border-radius: 20px; background: #fff; box-shadow: 0 16px 42px rgba(28,68,126,.07); }
.zt-benefit-grid span,
.zt-service-body > span { color: var(--zt-blue); font-size: 11px; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.zt-benefit-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.zt-benefit-top strong { color: #71819a; font-size: 10px; letter-spacing: .05em; text-transform: uppercase; }
.zt-benefit-grid h3 { margin: 24px 0 10px; font-size: 23px; letter-spacing: -.035em; line-height: 1.12; }
.zt-benefit-grid p { margin: 0; color: var(--zt-muted); font-size: 14px; }
.zt-benefit-grid ul { display: grid; gap: 8px; margin: 22px 0 28px; padding: 20px 0 0; border-top: 1px solid #e0e9f4; list-style: none; }
.zt-benefit-grid li { position: relative; padding-left: 17px; color: #31445f; font-size: 12px; font-weight: 720; }
.zt-benefit-grid li::before { content: ""; position: absolute; top: .58em; left: 0; width: 7px; height: 7px; border-radius: 50%; background: var(--zt-blue); box-shadow: 0 0 0 4px #e6edff; }
.zt-benefit-result { display: flex; align-items: end; gap: 10px; margin-top: auto; padding-top: 18px; border-top: 1px solid #e0e9f4; }
.zt-benefit-result b { color: var(--zt-blue); font-size: 30px; letter-spacing: -.05em; line-height: 1; }
.zt-benefit-result small { max-width: 130px; color: #60728e; font-size: 10px; font-weight: 800; line-height: 1.25; text-transform: uppercase; }

.zt-configurable { padding: clamp(78px, 9vw, 124px) 0; background: #fff; }
.zt-config-layout { width: min(1120px, calc(100% - 40px)); display: grid; grid-template-columns: minmax(0,1fr) minmax(360px,.86fr); gap: 26px; margin: 0 auto; }
.zt-config-options { display: grid; gap: 12px; }
.zt-config-options article { display: grid; grid-template-columns: 48px 1fr; gap: 17px; align-items: start; padding: 22px; border: 1px solid var(--zt-line); border-radius: 18px; background: #f8fbff; }
.zt-config-options article > span { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 14px; color: #fff; background: var(--zt-blue); font-size: 12px; font-weight: 900; }
.zt-config-options h3 { margin: 1px 0 6px; color: var(--zt-ink); font-size: 18px; letter-spacing: -.02em; }
.zt-config-options p { margin: 0; color: var(--zt-muted); font-size: 13px; }
.zt-lead-output { align-self: stretch; padding: 26px; border: 1px solid #b8cbff; border-radius: 24px; color: #fff; background: var(--zt-navy); box-shadow: 0 24px 60px rgba(8,17,36,.18); }
.zt-lead-output-head { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; padding-bottom: 20px; border-bottom: 1px solid #273653; }
.zt-lead-output-head > span { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 12px; background: var(--zt-blue); font-weight: 900; }
.zt-lead-output-head div { display: grid; gap: 2px; }
.zt-lead-output-head small { color: #9eb0ca; font-size: 10px; }
.zt-lead-output-head > b { padding: 7px 9px; border-radius: 999px; color: #98ffc4; background: #173c38; font-size: 9px; letter-spacing: .05em; text-transform: uppercase; }
.zt-lead-output dl { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 20px 0; }
.zt-lead-output dl > div { display: grid; gap: 5px; padding: 13px; border: 1px solid #2a3a58; border-radius: 12px; background: #111d33; }
.zt-lead-output dt { color: #8193ad; font-size: 9px; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.zt-lead-output dd { margin: 0; color: #fff; font-size: 12px; font-weight: 800; }
.zt-lead-output > p { display: flex; align-items: center; gap: 8px; margin: 0; color: #c8d4e6; font-size: 11px; font-weight: 750; }
.zt-lead-output > p span { width: 9px; height: 9px; border-radius: 50%; background: #2ee68a; box-shadow: 0 0 0 5px rgba(46,230,138,.12); }
.zt-config-results { width: min(1120px, calc(100% - 40px)); display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; margin: 18px auto 0; }
.zt-config-results span { display: flex; align-items: center; gap: 10px; padding: 17px 20px; border: 1px solid var(--zt-line); border-radius: 15px; color: #425675; background: #f8fbff; font-size: 12px; font-weight: 800; }
.zt-config-results b { color: var(--zt-blue); font-size: 22px; letter-spacing: -.04em; }

.zt-services { padding: clamp(78px, 9vw, 124px) 0; background: #f7faff; }
.zt-service-grid { width: min(1120px, calc(100% - 40px)); display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 22px; margin: 0 auto; }
.zt-service-card { border: 1px solid var(--zt-line); border-radius: 26px; background: #fff; overflow: hidden; box-shadow: 0 20px 55px rgba(28,68,126,.09); }
.zt-service-card-featured { border-color: var(--zt-blue); }
.zt-service-visual { position: relative; aspect-ratio: 16 / 9; margin: 0; background: #eef4fb; overflow: hidden; }
.zt-service-visual img { width: 100%; height: 100%; display: block; object-fit: cover; }
.zt-service-body { padding: 30px; }
.zt-service-body h3 { margin: 18px 0 10px; font-size: clamp(1.6rem, 2.4vw, 2rem); letter-spacing: -.035em; line-height: 1.08; }
.zt-service-body p { margin: 0; color: var(--zt-muted); }
.zt-service-body ul,
.zt-price-card ul { display: grid; gap: 8px; margin: 20px 0 0; padding: 0; list-style: none; }
.zt-service-body li,
.zt-price-card li { position: relative; padding-left: 17px; color: #2b3d58; font-size: 14px; font-weight: 720; }
.zt-service-body li::before,
.zt-price-card li::before { content: ""; position: absolute; top: .66em; left: 0; width: 7px; height: 7px; border-radius: 50%; background: var(--zt-blue); }
.zt-story { display: grid; grid-template-columns: minmax(360px,.9fr) minmax(0,1.1fr); align-items: center; gap: clamp(40px,7vw,90px); padding: clamp(82px,9vw,128px) max(24px,7vw); background: #eaf3ff; }
.zt-story-visual { position: relative; min-height: 580px; border-radius: 28px; background: #dfe9f6; overflow: hidden; box-shadow: var(--zt-shadow); }
.zt-story-visual > img { width: 100%; height: 100%; min-height: 580px; display: block; object-fit: cover; object-position: 38% center; }
.zt-story-brand { position: absolute; right: 20px; bottom: 20px; left: 20px; display: flex; align-items: center; gap: 16px; padding: 16px 18px; border: 1px solid rgba(255,255,255,.3); border-radius: 18px; color: #fff; background: rgba(8,17,36,.9); }
.zt-story-brand img { width: 130px; height: 58px; object-fit: contain; }
.zt-story-brand div { display: grid; gap: 3px; }
.zt-story-brand span { color: #c6d3e7; font-size: 12px; }
.zt-story-copy > p:not(.zt-eyebrow) { color: var(--zt-muted); font-size: 16px; }
.zt-story-copy .zt-button { margin-top: 10px; }
.zt-story-metrics { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-top: 30px; }
.zt-story-metrics span { display: grid; gap: 5px; padding: 18px; border: 1px solid #cbdcf1; border-radius: 15px; background: rgba(255,255,255,.78); }
.zt-story-metrics strong { color: var(--zt-blue); font-size: 28px; line-height: 1; }
.zt-story-metrics small { color: #455977; font-size: 11px; font-weight: 750; }

.zt-contact { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(42px,7vw,90px); padding: clamp(82px,9vw,128px) max(24px,8vw); background: #fff; }
.zt-contact-copy > p:not(.zt-eyebrow) { color: var(--zt-muted); font-size: 17px; }
.zt-contact-copy > a { display: inline-block; margin-top: 16px; color: var(--zt-blue); font-size: 23px; font-weight: 850; text-decoration: none; }
.zt-contact-form { display: grid; gap: 17px; padding: clamp(24px,4vw,42px); border: 1px solid var(--zt-line); border-radius: 25px; background: #f8fbff; box-shadow: var(--zt-shadow); }
.zt-contact-form label { display: grid; gap: 7px; color: #20314e; font-size: 13px; font-weight: 820; }
.zt-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.zt-contact-form input,
.zt-contact-form textarea { width: 100%; border: 1px solid #cad8ea; border-radius: 10px; color: var(--zt-ink); background: #fff; }
.zt-contact-form input { height: 49px; padding: 0 13px; }
.zt-contact-form textarea { min-height: 130px; padding: 12px 13px; resize: vertical; }
.zt-contact-form .zt-button { justify-self: start; }
.zt-form-status { min-height: 24px; margin: 0; color: #29405f; font-size: 13px; font-weight: 750; }

.zt-pricing { padding: clamp(82px,9vw,128px) max(20px,6vw); color: #fff; background: var(--zt-navy); }
.zt-section-heading-light h2 { color: #fff; }
.zt-section-heading-light .zt-eyebrow { color: #83a4ff; }
.zt-section-heading-light .zt-eyebrow > span { background: #83a4ff; }
.zt-section-heading-light > p:last-child { color: #aebdd3; }
.zt-price-grid { width: min(1180px,100%); display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); align-items: start; gap: 16px; margin: 0 auto; }
.zt-price-card { display: flex; min-width: 0; min-height: 680px; flex-direction: column; align-self: start; padding: 30px; border: 1px solid #2e3a52; border-radius: 22px; background: #151d2f; }
.zt-price-card-featured { border-color: var(--zt-blue); background: linear-gradient(155deg, #162b70, #111b3d); }
.zt-price-card-enterprise { border-color: #6b78a0; background: radial-gradient(circle at 85% 0, rgba(84,108,255,.25), transparent 33%), linear-gradient(155deg, #111a31, #080d19 70%); box-shadow: 0 26px 70px rgba(0,0,0,.28); }
.zt-price-card > span { color: #a8bbe0; font-size: 11px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.zt-price-card h3 { display: grid; gap: 2px; margin: 20px 0 12px; color: #fff; font-size: 42px; letter-spacing: -.04em; line-height: 1; }
.zt-price-card h3 small { color: #b9c5d8; font-size: 13px; letter-spacing: 0; }
.zt-price-card p { margin: 0; color: #c3cede; font-size: 14px; }
.zt-price-recurring, .zt-price-mystery { display: block; margin: -2px 0 18px; color: #8eb2ff; font-size: 13px; }
.zt-price-mystery { color: #fff; font-size: 18px; letter-spacing: -.02em; }
.zt-price-card li { color: #dce6f5; }
.zt-price-actions { display: grid; justify-items: center; gap: 13px; margin-top: auto; padding-top: 28px; }
.zt-price-cta { min-height: 46px; width: 100%; border: 1px solid transparent; border-radius: 10px; color: var(--zt-ink); background: #fff; font-size: 13px; font-weight: 850; cursor: pointer; }
.zt-price-card-featured .zt-price-cta { color: #fff; background: var(--zt-blue); }
.zt-price-card-enterprise .zt-price-cta { color: #fff; background: linear-gradient(90deg, #1548ff, #6c4fff); }
.zt-price-more { width: auto; min-height: 0; padding: 1px 2px; border: 0; color: #aebfe0; background: transparent; font-size: 12px; font-weight: 800; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; cursor: pointer; }
.zt-price-more:hover { color: #fff; }
.zt-price-more-panel { margin-top: 22px; padding-top: 18px; border-top: 1px solid #33425c; }
.zt-price-more-panel[hidden] { display: none; }
.zt-price-more-panel ul { margin-top: 0; }
.zt-price-more-panel p { margin-top: 18px; padding: 14px; border: 1px solid #33425c; border-radius: 12px; background: rgba(255,255,255,.04); font-size: 12px; }
.zt-price-note { max-width: 960px; margin: 26px auto 0; color: #8d9bb2; font-size: 11px; text-align: center; }

.zt-package-modal { position: fixed; z-index: 8000; inset: 0; display: grid; place-items: center; padding: 24px; }
.zt-package-modal[hidden] { display: none; }
.zt-package-backdrop { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; background: rgba(3,8,19,.78); backdrop-filter: blur(6px); cursor: pointer; }
.zt-package-dialog { position: relative; z-index: 1; width: min(780px,100%); max-height: calc(100vh - 48px); padding: clamp(25px,4vw,42px); border: 1px solid #cfdbec; border-radius: 26px; background: #fff; box-shadow: 0 34px 100px rgba(0,0,0,.38); overflow-y: auto; }
.zt-package-dialog > .zt-eyebrow { margin-bottom: 14px; }
.zt-package-dialog > h2 { max-width: 650px; margin: 0; font-size: clamp(2rem,4vw,3.3rem); letter-spacing: -.05em; line-height: 1; }
.zt-package-dialog > p:not(.zt-eyebrow) { margin: 14px 0 24px; color: var(--zt-muted); }
.zt-package-close { position: absolute; top: 16px; right: 16px; width: 40px; height: 40px; border: 0; border-radius: 11px; color: #3c4d68; background: #eef3fa; font-size: 25px; cursor: pointer; }
.zt-package-form { display: grid; gap: 16px; }
.zt-package-form label { display: grid; gap: 7px; color: #20314e; font-size: 13px; font-weight: 820; }
.zt-package-form input:not([type="checkbox"]), .zt-package-form select, .zt-package-form textarea { width: 100%; border: 1px solid #cad8ea; border-radius: 10px; color: var(--zt-ink); background: #fff; }
.zt-package-form input:not([type="checkbox"]), .zt-package-form select { height: 49px; padding: 0 13px; }
.zt-package-form textarea { min-height: 112px; padding: 12px 13px; resize: vertical; }
.zt-package-form .zt-check-field { display: flex; grid-template-columns: none; align-items: center; gap: 9px; width: fit-content; }
.zt-package-form .zt-check-field input { width: 18px; height: 18px; margin: 0; accent-color: var(--zt-blue); }
.zt-package-form .zt-button { justify-self: start; }
.zt-modal-open { overflow: hidden !important; }

.zt-site-footer { padding: 42px 20px; color: #fff; background: #050a15; }
.zt-footer-inner { width: min(1120px,100%); display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 22px 40px; margin: 0 auto; }
.zt-footer-inner > p { margin: 0; color: #9cabc1; font-size: 13px; }
.zt-footer-links { display: flex; gap: 20px; }
.zt-footer-links a { color: #cbd6e7; font-size: 12px; font-weight: 750; text-decoration: none; }
.zt-footer-inner > small { grid-column: 1 / -1; padding-top: 18px; border-top: 1px solid #192236; color: #738198; font-size: 11px; }

.zt-content-shell { min-height: 65vh; padding: 80px 20px; background: var(--zt-sky); }
.zt-content-card { width: min(820px,100%); margin: 0 auto 24px; padding: clamp(28px,5vw,54px); border: 1px solid var(--zt-line); border-radius: 24px; background: #fff; box-shadow: var(--zt-shadow); }
.zt-content-card h1 { margin-top: 0; font-size: clamp(2.3rem,5vw,4rem); letter-spacing: -.05em; line-height: 1; }
.zt-content-card h1 a { text-decoration: none; }

@media (max-width: 980px) {
  .zt-hero-inner { grid-template-columns: 1fr; }
  .zt-hero-copy { max-width: 780px; margin: 0 auto; text-align: center; }
  .zt-hero-copy .zt-eyebrow, .zt-actions, .zt-checks { justify-content: center; }
  .zt-hero h1, .zt-hero-lead { margin-right: auto; margin-left: auto; }
  .zt-hero-product { max-width: 620px; justify-self: center; }
  .zt-product-quote { left: -25px; }
  .zt-benefit-grid { grid-template-columns: 1fr; }
  .zt-benefit-grid article { min-height: 0; }
  .zt-config-layout { grid-template-columns: 1fr; }
  .zt-service-grid { grid-template-columns: 1fr 1fr; }
  .zt-story, .zt-contact { grid-template-columns: 1fr; }
  .zt-story-visual { min-height: 520px; }
  .zt-story-visual > img { min-height: 520px; }
  .zt-contact-copy { max-width: 780px; }
  .zt-price-grid { grid-template-columns: 1fr; max-width: 650px; }
  .zt-price-card p { min-height: 0; }
}

@media (max-width: 760px) {
  html { scroll-padding-top: 68px; }
  .zt-header-inner { min-height: 64px; }
  .zt-menu-toggle { display: block; }
  .zt-primary-nav { position: absolute; top: 64px; right: 0; left: 0; display: none; align-items: stretch; gap: 0; padding: 10px 18px 18px; border-top: 1px solid #1d2940; background: var(--zt-navy); box-shadow: 0 18px 32px rgba(0,0,0,.2); }
  .zt-primary-nav.is-open { display: grid; }
  .zt-primary-nav a { padding: 13px; }
  .zt-primary-nav .zt-nav-cta { margin-top: 5px; text-align: center; }
  .zt-hero { min-height: 0; padding: 70px 0 190px; }
  .zt-hero-inner { width: min(100% - 28px, 620px); gap: 50px; }
  .zt-hero h1 { font-size: clamp(2.75rem, 13vw, 4.25rem); }
  .zt-hero-lead { font-size: 15px; }
  .zt-actions { display: grid; }
  .zt-checks { display: grid; justify-items: start; width: fit-content; margin-right: auto; margin-left: auto; }
  .zt-hero-product { padding: 15px; border-radius: 20px; }
  .zt-product-map { height: 145px; }
  .zt-product-quote { position: relative; top: auto; left: auto; width: 100%; margin-top: 12px; }
  .zt-lawn { height: clamp(170px, 25%, 220px); }
  .zt-tree { bottom: 14%; opacity: .72; }
  .zt-tree-left { left: -62px; }
  .zt-tree-right { right: -55px; }
  .zt-section-heading { width: min(100% - 28px, 720px); margin-bottom: 34px; }
  .zt-section-heading h2, .zt-services h2, .zt-story h2, .zt-contact h2, .zt-pricing h2 { font-size: clamp(2.15rem, 10vw, 3.25rem); }
  .zt-section-heading > p:last-child { font-size: 15px; }
  .zt-benefit-grid, .zt-service-grid { width: min(100% - 28px, 720px); grid-template-columns: 1fr; }
  .zt-benefit-grid article { padding: 23px; }
  .zt-benefit-top { align-items: flex-start; flex-direction: column; }
  .zt-config-layout, .zt-config-results { width: min(100% - 28px, 720px); }
  .zt-config-options article { grid-template-columns: 42px 1fr; padding: 18px; }
  .zt-config-options article > span { width: 42px; height: 42px; }
  .zt-lead-output { padding: 20px; }
  .zt-lead-output dl, .zt-config-results { grid-template-columns: 1fr; }
  .zt-service-body { padding: 24px; }
  .zt-story { padding-right: 14px; padding-left: 14px; }
  .zt-story-visual, .zt-story-visual > img { min-height: 430px; }
  .zt-story-brand { right: 12px; bottom: 12px; left: 12px; gap: 10px; padding: 12px; }
  .zt-story-brand img { width: 95px; height: 44px; }
  .zt-story-brand strong { font-size: 13px; }
  .zt-story-brand span { font-size: 10px; }
  .zt-story-copy { padding: 0 8px; }
  .zt-story-metrics { grid-template-columns: 1fr; }
  .zt-contact { padding-right: 14px; padding-left: 14px; }
  .zt-contact-form { padding: 22px; }
  .zt-form-row { grid-template-columns: 1fr; }
  .zt-contact-form .zt-button { width: 100%; }
  .zt-pricing { padding-right: 14px; padding-left: 14px; }
  .zt-price-card { min-height: 0; padding: 24px; }
  .zt-package-modal { place-items: end center; padding: 0; }
  .zt-package-dialog { width: 100%; max-height: 94vh; padding: 28px 18px 22px; border-right: 0; border-bottom: 0; border-left: 0; border-radius: 24px 24px 0 0; }
  .zt-package-dialog > h2 { padding-right: 34px; }
  .zt-package-form .zt-button { width: 100%; }
  .zt-footer-inner { grid-template-columns: 1fr; }
  .zt-footer-links { flex-wrap: wrap; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}
