/* Zend2 homepage — scoped to body.z2-home. Do not use unscoped Bootstrap overrides. */
body.z2-home {
  --brand: #2563eb;
  --plus: #6d4aff;
  --success: #22c55e;
  --success-bg: #dcfce7;
  --navy: #0b1b3a;
  --warm: #faf9f5;
  --white: #fff;
  --display: "Fraunces", Georgia, serif;
  --sans: "Plus Jakarta Sans", Arial, sans-serif;
  --script: "Caveat", cursive;
  background: var(--warm);
  color: var(--navy);
  font-family: var(--sans);
  -webkit-font-smoothing: antialiased;
  overflow-x: clip;
}
body.z2-home main { overflow-x: clip; }
body.z2-home .z2h a { color: inherit; text-decoration: none; }
body.z2-home .z2h img { display: block; max-width: 100%; }
body.z2-home .z2h .z2-shell {
  width: min(1280px, calc(100% - 48px));
  max-width: 1280px;
  margin-inline: auto;
  padding-left: 0;
  padding-right: 0;
}


body.z2-home .z2-navbar {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 50;
  background: rgba(250,249,245,.82);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(11,27,58,.05);
}
body.z2-home .z2-navbar .nav-link {
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--navy);
  background: transparent;
}
body.z2-home .z2-navbar .nav-link:hover {
  color: var(--brand);
  background: transparent;
}
body.z2-home .z2-brand-word {
  font-size: 20px;
  font-weight: 700;
  letter-spacing: -.03em;
}
body.z2-home .z2-footer {
  background: var(--warm);
  border-top: 1px solid rgba(11,27,58,.05);
  padding: 64px 0 40px;
}
body.z2-home .z2-footer-label {
  font-size: 11px;
  letter-spacing: .14em;
  color: rgba(11,27,58,.38);
}
body.z2-home .z2-footer a { color: rgba(11,27,58,.72); }
body.z2-home .z2-footer a:hover { color: var(--brand); }
body.z2-home .z2h .hero{padding-top:160px;padding-bottom:80px}body.z2-home .z2h .hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:64px}body.z2-home .z2h .hero-copy{position:relative}body.z2-home .z2h .script-note{position:absolute;top:-52px;left:-12px;transform:rotate(-6deg);font-family:var(--script);font-size:25px;color:var(--plus)}body.z2-home .z2h h1, body.z2-home .z2h h2, body.z2-home .z2h .price{font-family:var(--display)}body.z2-home .z2h h1{margin:0;font-size:clamp(58px,6.4vw,92px);line-height:.95;letter-spacing:-.045em;font-weight:400}body.z2-home .z2h h1 em, body.z2-home .z2h h2 em{font-style:italic;color:var(--brand)}body.z2-home .z2h .hero-copy>p{max-width:540px;margin:30px 0 30px;font-size:20px;line-height:1.75;color:rgba(11,27,58,.7)}body.z2-home .z2h .store-buttons{display:flex;flex-wrap:wrap;gap:16px}body.z2-home .z2h .store-button{--store-top:#454b57;--store-mid:#151923;--store-bottom:#03050a;position:relative;isolation:isolate;overflow:hidden;min-width:196px;display:flex;align-items:center;gap:12px;padding:12px 20px;border-radius:14px;border:1px solid rgba(255,255,255,.24);color:#faf9f5;background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.04) 38%,transparent 39%),linear-gradient(180deg,var(--store-top) 0%,var(--store-mid) 45%,var(--store-bottom) 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.35),inset 0 -1px 0 rgba(0,0,0,.45),0 16px 34px rgba(11,27,58,.28);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}body.z2-home .z2h .google-button{min-width:212px}body.z2-home .z2h .store-button:after{position:absolute;inset:-40% auto -40% -70%;z-index:-1;width:45%;content:"";background:linear-gradient(105deg,transparent,rgba(255,255,255,.28),transparent);transform:skewX(-18deg);transition:transform .5s ease}body.z2-home .z2h .store-button:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(0,0,0,.45),0 20px 42px rgba(11,27,58,.34)}body.z2-home .z2h .store-button:hover:after{transform:translateX(420%) skewX(-18deg)}body.z2-home .z2h .apple-logo{width:32px;height:32px;fill:currentColor;flex:none}body.z2-home .z2h .play-logo{width:28px;height:28px;flex:none}body.z2-home .z2h .store-button small{display:block;font-size:11px;line-height:1;font-weight:500;color:rgba(250,249,245,.75)}body.z2-home .z2h .store-button small.play-small{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}body.z2-home .z2h .store-button strong{display:block;margin-top:4px;font-size:21px;line-height:1;font-weight:600;letter-spacing:-.03em}body.z2-home .z2h .google-button strong{font-size:20px}body.z2-home .z2h .hero-visual{position:relative}body.z2-home .z2h .visual-glow{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:999px;filter:blur(52px);pointer-events:none}body.z2-home .z2h .hero-glow{width:120%;height:120%;background:rgba(109,74,255,.05)}body.z2-home .z2h .phone-wrap{position:relative;width:100%;max-width:400px;margin:auto}body.z2-home .z2h .phone-image{width:100%;filter:drop-shadow(0 30px 30px rgba(0,0,0,.18))}body.z2-home .z2h .metric-card{position:absolute;right:-32px;bottom:64px;display:flex;align-items:center;gap:12px;padding:20px;border:1px solid rgba(11,27,58,.05);border-radius:16px;background:#fff;box-shadow:0 20px 36px rgba(11,27,58,.12)}body.z2-home .z2h .metric-icon{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;background:var(--success-bg)}body.z2-home .z2h .metric-icon i{width:12px;height:12px;border-radius:50%;background:var(--success)}body.z2-home .z2h .metric-card small, body.z2-home .z2h .plus-card small{display:block;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(11,27,58,.4)}body.z2-home .z2h .metric-card strong{display:block;margin-top:3px;font-family:var(--display);font-size:20px}body.z2-home .z2h .dark-section{background:var(--navy);color:#fff}body.z2-home .z2h .plus-section{position:relative;overflow:hidden;padding:96px 0}body.z2-home .z2h .plus-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px}body.z2-home .z2h .plus-visual{position:relative;order:1}body.z2-home .z2h .plus-glow{width:110%;height:110%;background:rgba(109,74,255,.2)}body.z2-home .z2h .plus-phone{position:relative;max-width:380px;margin:auto}body.z2-home .z2h .plus-card{position:absolute;right:32px;bottom:48px;padding:16px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:rgba(11,27,58,.85);box-shadow:0 22px 45px rgba(0,0,0,.28);backdrop-filter:blur(12px)}body.z2-home .z2h .plus-card small{color:rgba(255,255,255,.45)}body.z2-home .z2h .plus-card strong{display:block;margin-top:4px;font-family:var(--display);font-size:20px}body.z2-home .z2h .plus-copy{order:2}body.z2-home .z2h .plus-copy h2, body.z2-home .z2h .trust-section h2, body.z2-home .z2h .section-heading h2, body.z2-home .z2h .download-card h2{margin:0;font-size:52px;line-height:1.08;letter-spacing:-.035em;font-weight:400}body.z2-home .z2h .plus-copy h2 em, body.z2-home .z2h .trust-section h2 em, body.z2-home .z2h .section-heading h2 em{color:var(--plus)}body.z2-home .z2h .plus-copy>p{margin:24px 0 28px;font-size:18px;line-height:1.75;color:rgba(255,255,255,.6)}body.z2-home .z2h .check-list{list-style:none;padding:0;margin:0;display:grid;gap:16px}body.z2-home .z2h .check-list li{display:flex;align-items:center;gap:12px;line-height:1.5}body.z2-home .z2h .check-dot{width:20px;height:20px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%}body.z2-home .z2h .check-dot .icon{width:13px;height:13px;stroke-width:3.5}body.z2-home .z2h .check-plus{background:var(--plus);color:#fff}body.z2-home .z2h .check-success{background:var(--success-bg);color:var(--success)}body.z2-home .z2h .section-heading{margin-bottom:64px}body.z2-home .z2h .centered{text-align:center}body.z2-home .z2h .section-heading p{margin:16px 0 0;color:rgba(11,27,58,.5)}body.z2-home .z2h .features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}body.z2-home .z2h .feature-card{padding:32px;border:1px solid rgba(11,27,58,.05);border-radius:32px;background:#fff;box-shadow:0 2px 6px rgba(11,27,58,.04);transition:box-shadow .25s ease,transform .25s ease}body.z2-home .z2h .feature-card:hover{transform:translateY(-2px);box-shadow:0 22px 50px rgba(11,27,58,.1)}body.z2-home .z2h .feature-icon{width:56px;height:56px;display:grid;place-items:center;margin-bottom:24px;border-radius:16px}body.z2-home .z2h .feature-icon .icon{width:24px;height:24px}body.z2-home .z2h .tone-brand{background:rgba(37,99,235,.1);color:var(--brand)}body.z2-home .z2h .tone-plus{background:rgba(109,74,255,.1);color:var(--plus)}body.z2-home .z2h .tone-success{background:var(--success-bg);color:var(--success)}body.z2-home .z2h .tone-navy{background:rgba(11,27,58,.05);color:var(--navy)}body.z2-home .z2h .feature-card h4{margin:0 0 14px;font-size:20px}body.z2-home .z2h .feature-card p{margin:0;color:rgba(11,27,58,.6);line-height:1.75}body.z2-home .z2h .trust-section{padding:96px 0}body.z2-home .z2h .trust-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:64px}body.z2-home .z2h .trust-copy{font-size:18px;color:rgba(255,255,255,.7)}body.z2-home .z2h .trust-copy>p{margin:0 0 28px;line-height:1.75}body.z2-home .z2h .pricing-section{padding-top:96px}body.z2-home .z2h .pricing-pad{padding-bottom:96px}body.z2-home .z2h .pricing-container{max-width:1024px}body.z2-home .z2h .pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}body.z2-home .z2h .pricing-card{padding:40px;border-radius:32px}body.z2-home .z2h .free-card{border:1px solid rgba(11,27,58,.05);background:#fff;box-shadow:0 2px 6px rgba(11,27,58,.04)}body.z2-home .z2h .pricing-card h3{margin:0 0 8px;font-size:20px}body.z2-home .z2h .price{margin-bottom:32px;font-size:40px;font-weight:700}body.z2-home .z2h .pricing-list{margin-bottom:40px;color:rgba(11,27,58,.7)}body.z2-home .z2h .outline-button, body.z2-home .z2h .plus-button{display:block;padding:12px 18px;border-radius:999px;text-align:center;font-weight:600;transition:.18s ease}body.z2-home .z2h .outline-button{border:1px solid rgba(11,27,58,.1)}body.z2-home .z2h .outline-button:hover{border-color:var(--brand);color:var(--brand)}body.z2-home .z2h .plus-pricing-card{position:relative;overflow:hidden;background:var(--navy);color:#fff;box-shadow:0 22px 48px rgba(11,27,58,.2)}body.z2-home .z2h .price-glow{position:absolute;right:-64px;top:-64px;width:224px;height:224px;border-radius:50%;background:rgba(109,74,255,.3);filter:blur(45px)}body.z2-home .z2h .pricing-content{position:relative}body.z2-home .z2h .price-title-row{display:flex;align-items:center;gap:12px;margin-bottom:8px}body.z2-home .z2h .price-title-row h3{margin:0}body.z2-home .z2h .plus-badge{padding:4px 8px;border-radius:4px;background:var(--plus);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em}body.z2-home .z2h .light-list{color:rgba(255,255,255,.8)}body.z2-home .z2h .plus-button{background:var(--plus);color:#fff}body.z2-home .z2h .plus-button:hover{background:#6240f1}body.z2-home .z2h .download-section{padding:0 0 96px}body.z2-home .z2h .download-card{position:relative;overflow:hidden;padding:80px 32px;border-radius:40px;background:linear-gradient(135deg,var(--brand),var(--plus));color:#fff;text-align:center}body.z2-home .z2h .download-card h2{max-width:690px;margin:0 auto 24px;font-size:50px}body.z2-home .z2h .download-card>p{max-width:460px;margin:0 auto 40px;line-height:1.7;color:rgba(255,255,255,.8)}body.z2-home .z2h .download-buttons{display:flex;justify-content:center}body.z2-home .z2h .decor{position:absolute;width:32px;height:32px;color:rgba(255,255,255,.3)}body.z2-home .z2h .decor-sparkles{left:40px;top:40px}body.z2-home .z2h .decor-pin{right:48px;bottom:48px}body.z2-home .z2h .copyright{font-size:14px;color:rgba(11,27,58,.4)}body.z2-home .z2h .icon{width:24px;height:24px}@media (max-width:1024px){.hero-grid,.plus-grid,.trust-grid{grid-template-columns:1fr}.hero-grid{gap:72px}.hero-copy{text-align:left}.hero-visual{margin-top:12px}.plus-copy{order:1}.plus-visual{order:2}.features-grid{grid-template-columns:repeat(2,1fr)}.script-note{display:none}.metric-card{right:0}.plus-card{right:10%}}@media (max-width:767px){.z2-shell{width:min(100% - 32px,1280px)}.nav-inner{height:72px}.nav-links{display:none}.brand{font-size:18px}.brand-mark{width:36px;height:36px}.nav-cta{padding:10px 18px;font-size:13px}.hero{padding-top:128px;padding-bottom:64px}.section-pad,.plus-section,.trust-section{padding-top:72px;padding-bottom:72px}.hero-grid,.plus-grid,.trust-grid{gap:52px}h1{font-size:clamp(48px,14vw,68px)}.hero-copy>p{font-size:17px;line-height:1.7}.store-buttons{display:grid;grid-template-columns:1fr;width:100%;max-width:330px}.store-button,.google-button{min-width:0}.phone-wrap{max-width:345px}.metric-card{right:-4px;bottom:40px;padding:14px}.plus-phone{max-width:330px}.plus-card{right:0;bottom:38px}.plus-copy h2,.trust-section h2,.section-heading h2{font-size:42px}.features-grid,.pricing-grid{grid-template-columns:1fr}.section-heading{margin-bottom:44px}.feature-card{padding:28px}.trust-copy{font-size:16px}.pricing-card{padding:32px}.download-section{padding-bottom:72px}.download-card{padding:64px 24px;border-radius:32px}.download-card h2{font-size:40px}.download-buttons .store-buttons{margin:auto}.footer-inner{flex-direction:column;text-align:center}.footer-links{flex-wrap:wrap;justify-content:center}.decor-sparkles{left:24px;top:24px}.decor-pin{right:24px;bottom:24px}}@media (max-width:420px){.nav-cta{padding-inline:14px}.hero{padding-top:116px}.metric-card{position:relative;right:auto;bottom:auto;width:max-content;margin:-26px 0 0 auto}.plus-card{position:relative;right:auto;bottom:auto;width:max-content;margin:-28px 0 0 auto}.download-card h2{font-size:36px}}body.z2-home .z2h .hero-proof{margin:18px 0 0!important;font-size:13px!important;line-height:1.5!important;font-weight:600;color:rgba(11,27,58,.48)!important}body.z2-home .z2h .eyebrow{display:inline-block;margin-bottom:14px;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--brand)}body.z2-home .z2h .eyebrow-light{color:rgba(255,255,255,.56)}body.z2-home .z2h .feature-card h3{margin:0 0 14px;font-size:20px}body.z2-home .z2h .text-link{display:inline-flex;align-items:center;gap:8px;margin-top:28px;font-weight:700;color:var(--brand)}body.z2-home .z2h .text-link .icon{width:17px;height:17px;transition:transform .18s ease}body.z2-home .z2h .text-link:hover .icon{transform:translateX(3px)}body.z2-home .z2h .light-link{color:#fff}body.z2-home .z2h .tools-section{padding:0 0 96px}body.z2-home .z2h .tools-head{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end;margin-bottom:38px}body.z2-home .z2h .tools-head h2{margin:0;font-family:var(--display);font-size:48px;line-height:1.08;letter-spacing:-.035em;font-weight:400}body.z2-home .z2h .tools-head>p{max-width:540px;margin:0 0 4px;line-height:1.75;color:rgba(11,27,58,.58)}body.z2-home .z2h .tools-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}body.z2-home .z2h .tool-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:24px;border:1px solid rgba(11,27,58,.06);border-radius:24px;background:#fff;box-shadow:0 2px 8px rgba(11,27,58,.04);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}body.z2-home .z2h .tool-card:hover{transform:translateY(-2px);border-color:rgba(37,99,235,.2);box-shadow:0 18px 36px rgba(11,27,58,.09)}body.z2-home .z2h .tool-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:rgba(37,99,235,.08);color:var(--brand)}body.z2-home .z2h .tool-icon .icon{width:22px;height:22px}body.z2-home .z2h .tool-content{display:grid;gap:5px}body.z2-home .z2h .tool-content strong{font-size:16px}body.z2-home .z2h .tool-content span{font-size:14px;line-height:1.55;color:rgba(11,27,58,.56)}body.z2-home .z2h .tool-arrow{width:18px;height:18px;color:rgba(11,27,58,.28);transition:transform .18s ease,color .18s ease}body.z2-home .z2h .tool-card:hover .tool-arrow{transform:translateX(3px);color:var(--brand)}body.z2-home .z2h .plan-copy{margin:-18px 0 24px;line-height:1.6;color:rgba(11,27,58,.52)}body.z2-home .z2h .light-plan-copy{color:rgba(255,255,255,.55)}body.z2-home .z2h .plus-pricing-card .price{font-size:34px;line-height:1.05}body.z2-home .z2h .faq-section{padding:0 0 96px}body.z2-home .z2h .faq-container{max-width:900px}body.z2-home .z2h .faq-list{display:grid;gap:14px}body.z2-home .z2h .faq-item{border:1px solid rgba(11,27,58,.06);border-radius:22px;background:#fff;box-shadow:0 2px 8px rgba(11,27,58,.035)}body.z2-home .z2h .faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 24px;font-weight:700}body.z2-home .z2h .faq-item summary::-webkit-details-marker{display:none}body.z2-home .z2h .faq-item summary span{font-family:var(--display);font-size:28px;font-weight:400;line-height:1;color:var(--brand);transition:transform .18s ease}body.z2-home .z2h .faq-item[open] summary span{transform:rotate(45deg)}body.z2-home .z2h .faq-item p{margin:0;padding:0 24px 24px;line-height:1.75;color:rgba(11,27,58,.62)}@media (max-width:1024px){.tools-head{grid-template-columns:1fr;gap:16px}.tools-head>p{max-width:680px}}@media (max-width:767px){.hero-proof{text-align:left}.tools-section,.faq-section{padding-bottom:72px}.tools-head h2{font-size:42px}.tools-grid{grid-template-columns:1fr}.tool-card{padding:20px}.faq-item summary{padding:20px}.faq-item p{padding:0 20px 20px}}


.z2-nav-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-left: 12px;
  padding: 11px 24px;
  border: 0;
  border-radius: 999px;
  background: #0b1b3a;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  box-shadow: 0 10px 28px rgba(11,27,58,.12);
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
}
.z2-nav-cta:hover, .z2-nav-cta:focus-visible {
  background: #2563eb;
  color: #fff;
}
@media (max-width: 991.98px) {
  .z2-nav-cta { margin: 12px 0 8px; width: 100%; }
}

.z2-cs-dialog {
  border: 0;
  border-radius: 28px;
  padding: 0;
  width: min(440px, calc(100% - 32px));
  max-width: min(440px, calc(100vw - 32px));
  max-height: min(640px, calc(100dvh - 32px));
  overflow: auto;
  color: #0b1b3a;
  background: #faf9f5;
  box-shadow: 0 28px 80px rgba(11,27,58,.28);
}
.z2-cs-dialog::backdrop {
  background: rgba(11,27,58,.48);
  backdrop-filter: blur(6px);
}
.z2-cs-inner { padding: 32px 28px 24px; }
.z2-cs-dialog h2 {
  margin: 0 0 12px;
  font-family: Fraunces, Georgia, serif;
  font-size: 28px;
  font-weight: 400;
  letter-spacing: -.03em;
  line-height: 1.15;
}
.z2-cs-dialog p {
  margin: 0 0 24px;
  color: rgba(11,27,58,.68);
  line-height: 1.7;
}
.z2-cs-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}
.z2-cs-notify {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 11px 16px;
  border-radius: 999px;
  color: #2563eb;
  font-weight: 700;
  text-decoration: none;
}
.z2-cs-notify:hover { color: #1d4ed8; }
.z2-cs-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 11px 20px;
  border: 0;
  border-radius: 999px;
  background: #0b1b3a;
  color: #fff;
  font-weight: 700;
  cursor: pointer;
}
.z2-cs-close:hover { background: #2563eb; }
.z2-cs-x {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #0b1b3a;
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
}
.z2-cs-dialog { position: fixed; }
.z2-cs-inner { position: relative; }
body.z2-cs-open { overflow: hidden; }
@media (max-width: 420px) {
  .z2-cs-actions { flex-direction: column-reverse; }
  .z2-cs-notify, .z2-cs-close { width: 100%; }
}

body.z2-home .z2h .z2h-store-btn {
  appearance: none;
  -webkit-appearance: none;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
body.z2-home .z2h button.outline-button {
  width: 100%;
  background: #fff;
  color: inherit;
}
body.z2-home .z2h .notify-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
  font-size: 14px;
  font-weight: 700;
  color: var(--brand);
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
}
body.z2-home .z2h .notify-link .icon { width: 16px; height: 16px; }
body.z2-home .z2h .download-card .notify-link { color: #fff; }
body.z2-home .z2h .download-buttons { flex-direction: column; align-items: center; gap: 4px; }
body.z2-home .z2h .download-card .z2h-store-buttons { justify-content: center; }
@media (max-width: 767px) {
  body.z2-home .z2h .z2-shell { width: min(100% - 32px, 1280px); }
}

/* Match Lovable product shots: real PNG device renders, not SVG mockups */
body.z2-home .z2h .hero-visual,
body.z2-home .z2h .plus-visual {
  overflow: visible;
}
body.z2-home .z2h .phone-wrap {
  max-width: 400px;
}
body.z2-home .z2h .phone-image {
  width: 100%;
  height: auto;
  background: transparent;
  filter: drop-shadow(0 28px 45px rgba(11, 27, 58, 0.28));
}
body.z2-home .z2h .plus-phone {
  max-width: 380px;
}
body.z2-home .z2h .metric-card {
  right: -32px;
  bottom: 64px;
  z-index: 2;
}
body.z2-home .z2h .plus-card {
  z-index: 2;
}
body.z2-home .z2h .hero-glow {
  background: rgba(109, 74, 255, 0.12);
  filter: blur(72px);
}
body.z2-home .z2h .plus-glow {
  background: rgba(109, 74, 255, 0.35);
  filter: blur(72px);
}

/* Homepage mark matches the Lovable rounded Z, not the mint-corner SVG */
body.z2-home .z2-brand-mark {
  display: none;
}
body.z2-home .z2-brand {
  position: relative;
  padding-left: 52px;
}
body.z2-home .z2-brand::before {
  content: "Z";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: #2563eb;
  color: #fff;
  font-family: Fraunces, Georgia, serif;
  font-size: 20px;
  font-weight: 700;
  box-shadow: 0 5px 14px rgba(11, 27, 58, 0.18);
}
@media (max-width: 1024px) {
  body.z2-home .z2h .metric-card { right: 0; }
}
@media (max-width: 420px) {
  body.z2-home .z2h .metric-card,
  body.z2-home .z2h .plus-card {
    position: relative;
    right: auto;
    bottom: auto;
    width: max-content;
    margin: -20px 0 0 auto;
  }
}

body.z2-home .z2h .faq-item summary {
  cursor: pointer;
}
body.z2-home .z2h .faq-item summary:focus-visible,
.z2-cs-dialog .z2-cs-x:focus-visible,
.z2-cs-dialog .z2-cs-close:focus-visible,
.z2-cs-dialog .z2-cs-notify:focus-visible,
.z2-nav-cta:focus-visible {
  outline: 2px solid #2563eb;
  outline-offset: 2px;
}

