:root {
  --zad-blue: #12a0a4;
  --zad-blue-dark: #086f72;
  --zad-orange: #f58807;
  --zad-ink: #102f30;
  --zad-muted: #607273;
  --zad-cloud: #f4f8f8;
  --zad-line: #dce9e9;
}

html { scroll-behavior: smooth; }

body {
  background: #fff;
  color: var(--zad-ink);
  font-size: 16px;
}

.wasel-home {
  overflow: clip;
  background: #fff;
}

.hero-stage {
  min-height: 0;
  padding: 108px 0 46px;
  background:
    linear-gradient(180deg, rgba(18, 160, 164, .06), transparent 38%),
    #fff;
  color: var(--zad-ink);
}

.hero-stage::before,
.hero-stage::after { content: none; }

.hero-stage .container { max-width: 1240px; }

.home-preference-tools {
  justify-content: flex-start;
  margin-bottom: 18px;
}

.change-role-btn {
  min-height: 44px;
  padding: 8px 14px;
  border: 1px solid var(--zad-line);
  border-radius: 999px;
  background: #fff;
  color: var(--zad-blue-dark);
  box-shadow: 0 8px 24px rgba(16, 47, 48, .06);
}

.change-role-btn:hover,
.change-role-btn:focus-visible {
  border-color: var(--zad-blue);
  background: #effafa;
  outline: none;
}

.hero-copy { max-width: 610px; }

.hero-kicker {
  margin-bottom: 14px;
  padding: 8px 13px;
  border: 0;
  background: rgba(18, 160, 164, .10);
  color: var(--zad-blue-dark);
  font-size: .94rem;
}

.hero-copy h1 {
  margin-bottom: 18px;
  font-size: clamp(2.55rem, 5.4vw, 5.35rem);
  line-height: 1.03;
  letter-spacing: -.035em;
}

.hero-copy h1 span:first-child {
  display: block;
  color: var(--zad-ink);
  font-size: .28em;
  line-height: 1.5;
  letter-spacing: 0;
  margin-bottom: 8px;
}

.hero-copy h1 span:last-child {
  display: block;
  max-width: 720px;
  margin: 0;
  color: var(--zad-orange);
  font-size: .66em;
  line-height: 1.25;
  letter-spacing: 0;
}

.hero-copy p {
  max-width: 585px;
  margin-bottom: 24px;
  color: var(--zad-muted);
  font-size: 1.08rem;
  line-height: 1.9;
}

.hero-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  max-width: 590px;
}

.hero-actions .btn {
  min-height: 56px;
  border-radius: 14px;
  font-size: .98rem;
}

.hero-actions .btn:last-child { grid-column: 1 / -1; }

.btn-wasel-primary {
  border-color: var(--zad-blue);
  background: var(--zad-blue);
  color: #fff;
  box-shadow: 0 10px 22px rgba(18, 160, 164, .20);
}

.btn-wasel-primary:hover,
.btn-wasel-primary:focus-visible {
  border-color: var(--zad-blue-dark);
  background: var(--zad-blue-dark);
  color: #fff;
  transform: translateY(-2px);
}

.btn-wasel-soft {
  border: 0;
  background: var(--zad-orange);
  color: #fff;
  box-shadow: 0 10px 22px rgba(245, 136, 7, .22);
}

.btn-wasel-soft:hover,
.btn-wasel-soft:focus-visible {
  background: #dc7600;
  color: #fff;
  transform: translateY(-2px);
}

.hero-meta {
  margin-top: 20px;
  gap: 8px 18px;
  color: #496465;
}

.hero-meta span {
  padding: 0;
  border: 0;
  background: transparent;
  font-size: .9rem;
}

.hero-meta i { color: var(--zad-orange); }

.brand-showcase {
  position: relative;
  min-height: 535px;
  overflow: hidden;
  padding: 18px;
  border: 0;
  border-radius: 32px;
  background:
    linear-gradient(180deg, rgba(5, 42, 43, .05) 42%, rgba(5, 42, 43, .90) 100%),
    url('../img/zad-delivery-hero-v1.jpg') center / cover no-repeat;
  box-shadow: 0 28px 70px rgba(16, 47, 48, .22);
}

.showcase-top {
  position: relative;
  z-index: 2;
  align-items: center;
}

.status-pill {
  background: rgba(255, 255, 255, .94);
  color: var(--zad-blue-dark);
  border: 0;
  box-shadow: 0 8px 22px rgba(16, 47, 48, .12);
}

.status-pill.muted {
  background: rgba(16, 47, 48, .78);
  color: #fff;
}

.logo-orbit { display: none; }

.showcase-grid {
  position: absolute;
  z-index: 2;
  right: 18px;
  left: 18px;
  bottom: 18px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
}

.showcase-item {
  min-height: 94px;
  padding: 12px 8px;
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 16px;
  background: rgba(255, 255, 255, .94);
  color: var(--zad-ink);
  backdrop-filter: blur(12px);
}

.showcase-item i {
  color: var(--zad-orange);
  font-size: 1.35rem;
}

.showcase-item:hover,
.showcase-item:focus-visible {
  border-color: #fff;
  background: #fff;
  color: var(--zad-blue-dark);
  transform: translateY(-3px);
}

.personalized-section {
  margin-top: 24px;
  margin-bottom: 36px;
}

.personalized-card {
  grid-template-columns: auto 1fr auto;
  padding: 20px 24px;
  border: 1px solid rgba(18, 160, 164, .18);
  border-radius: 22px;
  background: #effafa;
  box-shadow: none;
}

.personalized-icon {
  width: 54px;
  height: 54px;
  border-radius: 15px;
  background: var(--zad-blue);
  color: #fff;
}

.personalized-copy h2 { margin-top: 3px; color: var(--zad-ink); }
.personalized-copy p { margin: 5px 0 0; color: var(--zad-muted); }
.personalized-actions a { border-radius: 12px; background: var(--zad-orange); }
.personalized-actions a.secondary { border-color: var(--zad-line); background: #fff; color: var(--zad-blue-dark); }

.home-section {
  max-width: 1240px;
  padding-top: 72px;
}

.section-head {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: end;
  gap: 12px 18px;
  margin-bottom: 28px;
}

.section-head span {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
  margin: 0;
  color: var(--zad-orange);
}

.section-head h2 {
  grid-column: 1;
  grid-row: 2;
  margin: 0;
  color: var(--zad-ink);
  font-size: clamp(1.8rem, 3vw, 2.65rem);
  line-height: 1.25;
}

.action-card {
  min-height: 100%;
  padding: 24px;
  border: 1px solid var(--zad-line);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 10px 34px rgba(16, 47, 48, .07);
}

.action-card::before {
  top: 0;
  right: 0;
  bottom: auto;
  left: 0;
  height: 5px;
  border-radius: 22px 22px 0 0;
  background: var(--zad-blue);
}

.action-card.join-card::before,
.action-card.courier-card::before { background: var(--zad-orange); }

.action-card:hover {
  transform: translateY(-6px);
  border-color: rgba(18, 160, 164, .34);
  box-shadow: 0 18px 42px rgba(16, 47, 48, .11);
}

.card-icon {
  width: 52px;
  height: 52px;
  margin-bottom: 26px;
  border-radius: 15px;
  background: #effafa;
  color: var(--zad-blue-dark);
  font-size: 1.45rem;
}

.join-card .card-icon,
.courier-card .card-icon { background: #fff4e6; color: var(--zad-orange); }
.action-card h3 { color: var(--zad-ink); font-size: 1.18rem; line-height: 1.5; }
.action-card p { color: var(--zad-muted); font-size: .94rem; line-height: 1.8; }

.btn-card-primary,
.btn-card-link {
  border-radius: 12px;
}

.btn-card-primary { background: var(--zad-blue); }
.join-card .btn-card-primary,
.courier-card .btn-card-primary { background: var(--zad-orange); }

#customer-apps {
  max-width: none;
  margin-top: 76px;
  padding: 76px max(12px, calc((100% - 1240px) / 2));
  background: var(--zad-cloud);
}

.download-panel {
  min-height: 330px;
  overflow: hidden;
  border: 0;
  border-radius: 28px;
  box-shadow: none;
}

.customer-panel {
  background: var(--zad-blue);
  color: #fff;
}

.driver-panel {
  background: var(--zad-ink);
  color: #fff;
}

.download-panel::after { content: none; }

.download-panel .panel-content { position: relative; z-index: 2; max-width: 520px; }
.download-panel h2 { max-width: 500px; color: #fff; font-size: clamp(1.65rem, 2.5vw, 2.35rem); line-height: 1.3; }
.download-panel p { color: rgba(255, 255, 255, .78); font-size: 1rem; }
.panel-badge { background: rgba(255, 255, 255, .12); color: #fff; }
.store-link { transition: transform .2s ease; }
.store-link:hover { transform: translateY(-3px); }
.app-store-img { height: 52px; width: auto; }
.driver-store-btn { border-color: rgba(255,255,255,.28); background: rgba(255,255,255,.10); color: #fff; }
.driver-store-btn:hover { border-color: #fff; background: #fff; color: var(--zad-ink); }
.panel-mark { color: rgba(255,255,255,.13); font-size: 8rem; }

.notice-strip {
  padding: 24px 28px;
  border: 0;
  border-radius: 22px;
  background: #fff4e6;
  color: var(--zad-ink);
}

.notice-strip > div i { color: var(--zad-orange); }
.btn-wasel-dark { border-radius: 12px; background: var(--zad-ink); }

.wasel-footer-bar {
  margin-top: 72px;
  padding: 28px 0 48px;
  border-top: 1px solid var(--zad-line);
  background: #fff;
}

.footer-links { justify-content: center; gap: 14px 26px; }
.footer-links a { color: var(--zad-muted); }
.footer-links a:hover { color: var(--zad-blue-dark); }

.welcome-overlay {
  padding: 20px;
  background: rgba(5, 42, 43, .72);
  backdrop-filter: blur(14px);
}

.welcome-dialog {
  width: min(920px, 100%);
  max-height: min(820px, calc(100vh - 40px));
  padding: 30px;
  border: 1px solid rgba(255,255,255,.5);
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 36px 100px rgba(5, 42, 43, .35);
}

.welcome-head { justify-content: center; margin-bottom: 8px; }
.welcome-logo { width: 116px; max-height: 58px; object-fit: contain; }
.welcome-intro { text-align: center; }
.welcome-kicker { padding: 7px 12px; border-radius: 999px; background: #effafa; color: var(--zad-blue-dark); }
.welcome-intro h2 { margin-top: 12px; color: var(--zad-ink); font-size: clamp(1.7rem, 3vw, 2.35rem); }
.welcome-intro p { color: var(--zad-muted); font-size: 1rem; }

.role-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 22px;
}

.role-option {
  min-height: 90px;
  padding: 14px;
  border: 1px solid var(--zad-line);
  border-radius: 17px;
  background: #fff;
}

.role-option:first-child { grid-column: 1 / -1; }
.role-option:last-child:nth-child(odd) { grid-column: auto; }
.role-option:hover,
.role-option:focus-visible { border-color: var(--zad-blue); background: #f5fbfb; transform: translateY(-2px); outline: none; }
.role-icon { width: 48px; height: 48px; border-radius: 14px; }
.role-option strong { color: var(--zad-ink); font-size: 1rem; }
.role-option small { color: var(--zad-muted); font-size: .86rem; }
.role-arrow { color: #9cb1b2; }
.explore-all-btn { min-height: 50px; margin-top: 12px; border-radius: 14px; background: var(--zad-ink); color: #fff; }
.explore-all-btn:hover { background: var(--zad-blue-dark); }
.welcome-note { color: var(--zad-muted); }

@media (max-width: 991.98px) {
  .hero-stage { padding-top: 92px; }
  .hero-copy { max-width: none; text-align: center; }
  .home-preference-tools { justify-content: center; }
  .hero-copy p { margin-inline: auto; }
  .hero-actions { max-width: 680px; margin-inline: auto; }
  .hero-meta { justify-content: center; }
  .brand-showcase { min-height: 500px; margin-top: 12px; background-position: center 42%; }
  .personalized-card { grid-template-columns: auto 1fr; }
  .personalized-actions { grid-column: 1 / -1; width: 100%; }
  .personalized-actions a { flex: 1 1 190px; }
}

@media (max-width: 767.98px) {
  body { font-size: 16px; }
  .hero-stage { padding: 82px 0 30px; }
  .home-preference-tools { margin-bottom: 12px; }
  .change-role-btn { min-height: 42px; font-size: .88rem; }
  .hero-copy h1 { font-size: clamp(2.4rem, 12vw, 3.7rem); }
  .hero-copy h1 span:first-child { font-size: .26em; }
  .hero-copy h1 span:last-child { font-size: .58em; line-height: 1.35; }
  .hero-copy p { font-size: 1rem; line-height: 1.8; }
  .hero-actions { grid-template-columns: 1fr; }
  .hero-actions .btn,
  .hero-actions .btn:last-child { grid-column: auto; min-height: 52px; }
  .hero-meta { gap: 7px 14px; }
  .hero-meta span { font-size: .82rem; }
  .brand-showcase { min-height: 440px; padding: 12px; border-radius: 24px; }
  .showcase-top { gap: 6px; }
  .status-pill { padding: 7px 9px; font-size: .74rem; }
  .showcase-grid { right: 12px; left: 12px; bottom: 12px; gap: 6px; }
  .showcase-item { min-height: 82px; padding: 9px 5px; border-radius: 13px; font-size: .76rem; line-height: 1.35; }
  .showcase-item i { font-size: 1.15rem; }
  .personalized-section { margin-top: 16px; margin-bottom: 24px; }
  .personalized-card { padding: 16px; border-radius: 18px; }
  .personalized-icon { width: 46px; height: 46px; }
  .personalized-copy h2 { font-size: 1.15rem; }
  .home-section { padding-top: 54px; }
  .section-head { margin-bottom: 20px; }
  .section-head h2 { font-size: 1.8rem; }
  .action-card { padding: 21px; }
  .card-icon { margin-bottom: 18px; }
  #customer-apps { margin-top: 56px; padding-top: 54px; padding-bottom: 54px; }
  .download-panel { min-height: 290px; padding: 24px; border-radius: 22px; }
  .download-panel h2 { font-size: 1.65rem; }
  .app-store-img { height: 46px; max-width: 100%; }
  .notice-strip { padding: 20px; }
  .notice-strip .btn { width: 100%; }
  .wasel-footer-bar { margin-top: 54px; padding-bottom: 60px; }
  .welcome-overlay { align-items: flex-end; padding: 0; }
  .welcome-dialog { width: 100%; max-height: 92vh; padding: 22px 16px 16px; border-radius: 26px 26px 0 0; }
  .welcome-logo { width: 94px; max-height: 45px; }
  .welcome-intro h2 { font-size: 1.65rem; }
  .role-grid { grid-template-columns: 1fr; gap: 8px; margin-top: 16px; }
  .role-option:first-child { grid-column: auto; }
  .role-option { min-height: 72px; padding: 10px 12px; }
  .role-icon { width: 43px; height: 43px; }
  .welcome-note { margin: 10px 0 0; font-size: .76rem; }
}

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

/* Full-width service groups keep each audience's actions together. */
.personalized-card::after { content: none; }
.audience-band {
  padding: clamp(52px, 6vw, 84px) 0;
  scroll-margin-top: 78px;
}
.audience-band-dark { background: #103638; color: #fff; }
.audience-band-light { background: #f2f8f7; color: var(--zad-ink); }
.audience-heading { max-width: 780px; margin-bottom: 30px; }
.audience-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 12px;
  color: var(--zad-orange);
  font-weight: 800;
}
.audience-heading h2 {
  margin: 0 0 10px;
  font-size: clamp(1.75rem, 3.3vw, 2.7rem);
  font-weight: 900;
  line-height: 1.3;
}
.audience-heading p { margin: 0; line-height: 1.85; font-size: 1.06rem; }
.audience-band-dark .audience-heading p { color: rgba(255, 255, 255, .82); }
.audience-band-light .audience-heading p { color: var(--zad-muted); }
#customer-apps.audience-band {
  max-width: none;
  margin: 0;
  padding: clamp(52px, 6vw, 84px) 0;
  background: #103638;
}
.audience-band .download-panel,
.audience-band .action-card { height: 100%; min-height: 260px; }
.audience-band .customer-panel {
  background: linear-gradient(120deg, #08777a, #12a0a4);
  color: #fff;
}
.audience-band .customer-panel .panel-content { max-width: none; }
.audience-band .customer-panel .store-buttons { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 18px; }
.audience-band .customer-panel .panel-mark { inset-inline-end: 32px; left: auto; bottom: 10px; }
.audience-band .driver-panel { background: linear-gradient(125deg, #075d60, #12a0a4); }
.audience-band .courier-card { background: #fff; }
.audience-band .card-links { margin-top: auto; }
.audience-admin { padding-top: 32px; padding-bottom: 32px; }
.audience-admin .admin-card {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr) auto;
  align-items: center;
  gap: 22px;
  min-height: 0;
}
.audience-admin .card-icon { margin: 0; }
.audience-admin h2 { margin: 0 0 6px; font-size: 1.4rem; font-weight: 900; }
.audience-admin p { margin: 0; color: var(--zad-muted); line-height: 1.7; }
.audience-admin .card-links { margin: 0; }
@media (max-width: 767.98px) {
  .audience-band, #customer-apps.audience-band { padding: 48px 0; }
  .audience-heading { margin-bottom: 22px; }
  .audience-band .download-panel, .audience-band .action-card { min-height: 0; }
  .audience-band .customer-panel .panel-mark { display: none; }
  .audience-admin .admin-card { grid-template-columns: 1fr; gap: 12px; }
  .audience-admin .card-links .btn { width: 100%; justify-content: center; }
}
