:root {
  --zem-electric: #00b7ff;
  --zem-deep: #0a1f3d;
  --zem-orange: #ff5a00;
  --zem-silver: #e5e7eb;
  --zem-white: #ffffff;
  --zem-carbon: #111827;
  --zem-steel: #1e2a3b;
  --zem-sky: #4cc9ff;
}

body.zem-cleaning-premium-page .entry-title,
body.zem-cleaning-premium-page .page-title { display: none !important; }
body.zem-cleaning-premium-page .entry-content,
body.zem-cleaning-premium-page .site-main,
body.zem-cleaning-premium-page .content-area { margin: 0 !important; padding: 0 !important; max-width: none !important; width: 100% !important; }

.zem-home, .zem-home * { box-sizing: border-box; }
.zem-home {
  width: 100%;
  overflow: hidden;
  color: var(--zem-white);
  background:
    radial-gradient(circle at 15% 8%, rgba(0,183,255,.22), transparent 32%),
    radial-gradient(circle at 82% 34%, rgba(255,90,0,.16), transparent 28%),
    linear-gradient(135deg, #020912 0%, #06172b 42%, #020812 100%);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.55;
}
.zem-home a { color: inherit; text-decoration: none; }
.zem-home img { max-width: 100%; display: block; }

.zem-hero-shell, .zem-section, .zem-footer {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
}

.zem-hero-shell { padding: 28px 0 38px; position: relative; }
.zem-hero-shell:before {
  content:""; position:absolute; inset: 84px -120px auto auto; width: 460px; height: 460px;
  border-radius: 50%; border: 1px solid rgba(0,183,255,.25);
  box-shadow: 0 0 80px rgba(0,183,255,.22), inset 0 0 80px rgba(255,90,0,.12);
  pointer-events:none;
}

.zem-nav {
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
  padding: 12px 0; position: relative; z-index: 5;
}
.zem-brand { display: flex; align-items: center; gap: 14px; min-width: 240px; }
.zem-brand img { width: 86px; filter: drop-shadow(0 0 18px rgba(0,183,255,.35)); }
.zem-brand strong { display:block; letter-spacing: .18em; font-size: 24px; line-height: 1; color: var(--zem-electric); }
.zem-brand strong b { color: var(--zem-white); font-weight: 800; }
.zem-brand em { display:block; margin-top: 7px; color: var(--zem-sky); font-style: normal; font-size: 11px; letter-spacing: .25em; text-transform: uppercase; }
.zem-menu { display: flex; align-items: center; gap: 28px; font-size: 15px; }
.zem-menu a { opacity: .92; transition: .2s ease; }
.zem-menu a:hover { color: var(--zem-sky); opacity: 1; }
.zem-nav-cta, .zem-btn-primary, .zem-quote-form button {
  background: linear-gradient(135deg, #0078ff, #00b7ff);
  color: #fff !important;
  border-radius: 10px;
  box-shadow: 0 0 22px rgba(0, 183, 255, .35), inset 0 1px 0 rgba(255,255,255,.22);
}
.zem-nav-cta { padding: 13px 24px; font-weight: 800; }
.zem-menu-toggle { display: none; background: rgba(255,255,255,.06); color: #fff; border: 1px solid rgba(255,255,255,.16); border-radius: 10px; padding: 9px 12px; font-size: 22px; }

.zem-hero { display: grid; grid-template-columns: .95fr 1.05fr; gap: 36px; align-items: center; padding: 54px 0 32px; position: relative; }
.zem-eyebrow { margin: 0 0 10px; color: var(--zem-electric); text-transform: uppercase; font-weight: 900; letter-spacing: .12em; font-size: 14px; }
.zem-hero h1 { margin: 0; font-size: clamp(44px, 6vw, 78px); line-height: .97; letter-spacing: -0.055em; max-width: 610px; }
.zem-hero h1 span, .zem-quote h2 span { color: var(--zem-electric); text-shadow: 0 0 22px rgba(0,183,255,.35); }
.zem-lead { color: rgba(255,255,255,.78); font-size: 18px; max-width: 560px; margin: 24px 0 0; }
.zem-actions { display: flex; gap: 18px; flex-wrap: wrap; margin-top: 30px; }
.zem-btn { display:inline-flex; align-items:center; justify-content:center; gap: 12px; min-height: 58px; padding: 0 28px; border-radius: 12px; font-weight: 900; }
.zem-btn-secondary { border: 1px solid rgba(76,201,255,.45); background: rgba(2,15,32,.66); box-shadow: inset 0 0 30px rgba(0,183,255,.08); }

.zem-hero-visual { position: relative; min-height: 530px; border-radius: 34px; overflow: hidden; background: linear-gradient(145deg, rgba(255,255,255,.08), rgba(255,255,255,.02)); border: 1px solid rgba(76,201,255,.2); box-shadow: inset 0 0 60px rgba(0,183,255,.08), 0 30px 90px rgba(0,0,0,.45); }
.zem-hero-visual:before { content:""; position:absolute; inset:0; background: linear-gradient(135deg, rgba(255,90,0,.06), transparent 30%), radial-gradient(circle at 62% 42%, rgba(0,183,255,.24), transparent 38%); }
.zem-orbit { position:absolute; width: 520px; height: 520px; right: -100px; top: 28px; border: 4px solid rgba(0,183,255,.44); border-left-color: rgba(255,90,0,.82); border-radius: 50%; transform: rotate(-12deg); filter: drop-shadow(0 0 16px rgba(0,183,255,.48)); }
.zem-team-card { position: absolute; inset: 64px 40px 70px 90px; border-radius: 30px; background: linear-gradient(155deg, rgba(255,255,255,.18), rgba(0,0,0,.18)); border: 1px solid rgba(255,255,255,.18); box-shadow: 0 30px 80px rgba(0,0,0,.45); padding: 34px; display:flex; flex-direction:column; justify-content:flex-end; }
.zem-avatar { width: 160px; height: 160px; border-radius: 50%; margin-bottom: 20px; background: radial-gradient(circle at 50% 24%, #e5e7eb 0 8%, #111827 9% 14%, #00b7ff 15% 22%, #0a1f3d 23% 100%); border: 5px solid rgba(255,255,255,.14); box-shadow: 0 0 50px rgba(0,183,255,.33); }
.zem-worker strong { display:block; font-size: 36px; line-height:1; }
.zem-worker span { display:block; margin-top: 10px; color: rgba(255,255,255,.72); }
.zem-cleaning-kit { position: absolute; right: 34px; bottom: 34px; display:flex; gap: 8px; align-items:flex-end; }
.zem-cleaning-kit span { width: 22px; border-radius: 99px; background: linear-gradient(#ff8c1a, #ff3900); box-shadow: 0 0 18px rgba(255,90,0,.45); }
.zem-cleaning-kit span:nth-child(1){height:70px}.zem-cleaning-kit span:nth-child(2){height:95px}.zem-cleaning-kit span:nth-child(3){height:120px}.zem-cleaning-kit span:nth-child(4){height:155px;background:linear-gradient(#e5e7eb,#8d97a4)}
.zem-floating-logo { position:absolute; width: 180px; left: 28px; bottom: 24px; filter: drop-shadow(0 0 25px rgba(0,183,255,.42)); }

.zem-trust-strip { display:grid; grid-template-columns: repeat(4, 1fr); gap:0; background: rgba(3,16,32,.72); border: 1px solid rgba(76,201,255,.28); border-radius: 18px; overflow:hidden; backdrop-filter: blur(18px); box-shadow: 0 18px 60px rgba(0,0,0,.24); }
.zem-trust-strip article { padding: 24px; border-right: 1px solid rgba(255,255,255,.1); display:grid; grid-template-columns: 44px 1fr; gap: 8px 16px; align-items:start; }
.zem-trust-strip article:last-child{border-right:0}.zem-trust-strip i{grid-row:span 2; color:var(--zem-electric); font-style:normal; font-size:34px; line-height:1}.zem-trust-strip strong{font-size:17px}.zem-trust-strip span{color:rgba(255,255,255,.65);font-size:14px}

.zem-section { padding: 72px 0; position: relative; }
.zem-section h2 { margin:0; font-size: clamp(34px, 4vw, 54px); line-height: 1.02; letter-spacing: -.04em; }
.zem-section-head { display:flex; justify-content:space-between; align-items:end; gap: 32px; margin-bottom: 34px; }
.zem-section-head > p { max-width: 500px; color: rgba(255,255,255,.72); font-size: 17px; }
.zem-centered { justify-content:center; text-align:center; }

.zem-service-grid { display:grid; grid-template-columns: repeat(6, 1fr); gap: 16px; }
.zem-service-card { min-height: 340px; padding: 18px; border-radius: 18px; background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(2,14,30,.84)); border: 1px solid rgba(255,255,255,.13); box-shadow: 0 20px 45px rgba(0,0,0,.22); transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease; }
.zem-service-card:hover { transform: translateY(-8px); border-color: rgba(0,183,255,.52); box-shadow: 0 24px 70px rgba(0,183,255,.15); }
.zem-card-visual { height: 116px; border-radius: 14px; background: linear-gradient(135deg, rgba(0,183,255,.18), rgba(255,90,0,.18)), radial-gradient(circle at 50% 30%, rgba(255,255,255,.22), transparent 45%), #101a2a; display:flex; align-items:end; justify-content:center; padding: 12px; margin-bottom: 18px; }
.zem-card-visual span { display:grid; place-items:center; width: 62px; height:62px; border-radius:50%; background: rgba(2,15,32,.9); color: var(--zem-electric); border: 2px solid rgba(0,183,255,.5); font-size: 32px; transform: translateY(36px); box-shadow: 0 0 28px rgba(0,183,255,.22); }
.zem-service-card h3 { margin: 42px 0 10px; font-size: 23px; line-height: 1.05; }
.zem-service-card p { color: rgba(255,255,255,.68); font-size: 14px; min-height: 68px; }
.zem-service-card a { color: var(--zem-orange); font-weight:900; }

.zem-about { display:grid; grid-template-columns: 1fr .85fr; gap: 44px; align-items:center; }
.zem-about-copy p { color: rgba(255,255,255,.72); max-width: 650px; }
.zem-about-copy h3 { color: var(--zem-sky); font-size: 24px; margin-top: 28px; }
.zem-mini-features { display:grid; grid-template-columns: repeat(4,1fr); gap: 10px; margin-top: 32px; }
.zem-mini-features span { min-height: 86px; border: 1px solid rgba(76,201,255,.22); background: rgba(255,255,255,.04); border-radius: 14px; padding: 14px; color: rgba(255,255,255,.76); font-size: 13px; }
.zem-mini-features b { display:block; color: var(--zem-electric); font-size: 20px; }
.zem-about-logo { position:relative; min-height: 430px; display:grid; place-items:center; }
.zem-about-logo img { width: 360px; position:relative; z-index:2; filter: drop-shadow(0 0 35px rgba(0,183,255,.35)); }
.zem-glow-ring { position:absolute; width: 380px; height:380px; border-radius:50%; border: 4px solid rgba(0,183,255,.5); border-left-color: var(--zem-orange); transform: rotate(32deg); box-shadow: inset 0 0 70px rgba(0,183,255,.12), 0 0 60px rgba(255,90,0,.16); }

.zem-project-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.zem-project-grid article { padding:28px; border-radius:18px; background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.025)); border:1px solid rgba(255,255,255,.12); }
.zem-project-grid strong { display:block; font-size:24px; margin-bottom:8px; }
.zem-project-grid span { color:rgba(255,255,255,.68); }

.zem-quote { display:grid; grid-template-columns: .85fr 1.15fr; gap: 26px; align-items:stretch; }
.zem-contact-card, .zem-quote-form { border-radius: 24px; border: 1px solid rgba(76,201,255,.25); background: linear-gradient(160deg, rgba(255,255,255,.08), rgba(255,255,255,.025)); box-shadow: 0 30px 90px rgba(0,0,0,.28), inset 0 0 45px rgba(0,183,255,.06); backdrop-filter: blur(18px); }
.zem-contact-card { padding: 36px; }
.zem-contact-card p, .zem-contact-card li { color: rgba(255,255,255,.72); }
.zem-contact-card ul { list-style:none; padding:0; margin:28px 0 0; display:grid; gap: 16px; }
.zem-contact-card li:first-child { color: #fff; }
.zem-quote-form { padding: 28px; display:grid; gap: 16px; }
.zem-quote-form label span { display:block; font-weight:800; margin-bottom:7px; color:rgba(255,255,255,.78); font-size: 13px; }
.zem-quote-form input, .zem-quote-form select, .zem-quote-form textarea { width:100%; border: 1px solid rgba(255,255,255,.14); background: rgba(2,14,30,.65); color:#fff; border-radius: 11px; min-height: 52px; padding: 12px 14px; outline:none; }
.zem-quote-form textarea { resize: vertical; }
.zem-quote-form input:focus, .zem-quote-form select:focus, .zem-quote-form textarea:focus { border-color: rgba(0,183,255,.72); box-shadow: 0 0 0 4px rgba(0,183,255,.11); }
.zem-quote-form button { border:0; min-height:56px; padding: 0 24px; font-weight:900; cursor:pointer; }
.zem-form-message { padding: 12px 14px; border-radius: 12px; font-weight: 800; }
.zem-form-success { background: rgba(0,183,255,.14); border: 1px solid rgba(0,183,255,.32); }
.zem-form-error { background: rgba(255,90,0,.14); border: 1px solid rgba(255,90,0,.32); }

.zem-testimonials { text-align:center; }
.zem-testimonial-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:28px; text-align:left; }
.zem-testimonial-grid article { padding:26px; border-radius:18px; background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.13); }
.zem-testimonial-grid b { color: var(--zem-orange); letter-spacing: .12em; }
.zem-testimonial-grid p { color:rgba(255,255,255,.72); }.zem-testimonial-grid strong{display:block}.zem-testimonial-grid span{color:var(--zem-sky); font-size:13px;}

.zem-footer { margin-top: 30px; padding: 36px; border: 1px solid rgba(76,201,255,.18); border-radius: 28px 28px 0 0; background: rgba(1,10,22,.72); display:grid; grid-template-columns: 1.25fr repeat(3,1fr); gap: 28px; position:relative; }
.zem-footer-brand img { width: 105px; margin-bottom: 10px; }
.zem-footer-brand strong { display:block; color: var(--zem-electric); letter-spacing:.16em; font-size:22px; }
.zem-footer-brand span, .zem-footer a, .zem-footer div > span { display:block; color: rgba(255,255,255,.68); margin-top: 8px; }
.zem-footer h4 { margin:0 0 12px; }
.zem-copyright { grid-column:1/-1; border-top:1px solid rgba(255,255,255,.08); padding-top:18px; text-align:center; color:rgba(255,255,255,.5); margin:0; }

@media (max-width: 1100px) {
  .zem-service-grid { grid-template-columns: repeat(3,1fr); }
  .zem-hero { grid-template-columns: 1fr; }
  .zem-hero-visual { min-height: 460px; }
}
@media (max-width: 860px) {
  .zem-menu-toggle { display:block; }
  .zem-menu { display:none; position:absolute; left:0; right:0; top:92px; background: rgba(2,12,26,.96); border:1px solid rgba(76,201,255,.22); border-radius:18px; padding:18px; flex-direction:column; align-items:stretch; z-index:10; }
  .zem-menu.is-open { display:flex; }
  .zem-menu a { padding: 10px 12px; }
  .zem-trust-strip { grid-template-columns: repeat(2,1fr); }
  .zem-trust-strip article:nth-child(2) { border-right:0; }
  .zem-section-head, .zem-about, .zem-quote { grid-template-columns:1fr; display:grid; }
  .zem-service-grid, .zem-project-grid, .zem-testimonial-grid, .zem-footer { grid-template-columns:1fr; }
  .zem-mini-features { grid-template-columns: repeat(2,1fr); }
  .zem-footer { border-radius: 24px 24px 0 0; }
}
@media (max-width: 560px) {
  .zem-hero-shell, .zem-section, .zem-footer { width: min(100% - 22px, 1180px); }
  .zem-brand img { width: 62px; }
  .zem-brand strong { font-size: 18px; }
  .zem-brand em { font-size: 9px; letter-spacing: .16em; }
  .zem-hero h1 { font-size: 44px; }
  .zem-actions { flex-direction: column; }
  .zem-btn { width: 100%; }
  .zem-hero-visual { min-height: 360px; border-radius: 24px; }
  .zem-team-card { inset: 50px 18px 48px 34px; padding: 20px; }
  .zem-worker strong { font-size: 26px; }
  .zem-floating-logo { width: 124px; }
  .zem-trust-strip { grid-template-columns:1fr; }
  .zem-trust-strip article { border-right:0; border-bottom:1px solid rgba(255,255,255,.1); }
  .zem-service-grid { grid-template-columns: 1fr; }
  .zem-mini-features { grid-template-columns:1fr; }
}

/* v1.0.1: standalone/full-width compatibility fixes */
html:has(body.zem-cleaning-standalone),
body.zem-cleaning-standalone {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  max-width: none !important;
  overflow-x: hidden !important;
  background: #020912 !important;
}
body.zem-cleaning-standalone #page,
body.zem-cleaning-standalone .site,
body.zem-cleaning-standalone .site-content,
body.zem-cleaning-standalone .content-area,
body.zem-cleaning-standalone .site-main,
body.zem-cleaning-standalone article,
body.zem-cleaning-premium-page #page,
body.zem-cleaning-premium-page .site,
body.zem-cleaning-premium-page .site-content,
body.zem-cleaning-premium-page article {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  max-width: none !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.zem-cleaning-standalone .zem-home,
body.zem-cleaning-premium-page .zem-home {
  min-height: 100vh;
  margin: 0 !important;
}
.zem-home h1, .zem-home h2, .zem-home h3, .zem-home h4, .zem-home h5, .zem-home h6,
.zem-home p, .zem-home span, .zem-home strong, .zem-home em, .zem-home li, .zem-home label {
  color: inherit;
}
.zem-home h1, .zem-home h2, .zem-home h3, .zem-home h4 {
  color: #ffffff !important;
}
.zem-home .zem-eyebrow, .zem-home .zem-hero h1 span, .zem-home .zem-quote h2 span, .zem-home .zem-about-copy h3 {
  color: var(--zem-electric) !important;
}
