/* Reda Ezzat — Dark Precision Edition / core components */
html{background:var(--rezz-c-page);scroll-behavior:smooth}
body.rezz-site{
  margin:0;
  background:
    radial-gradient(900px 520px at -12% 4%,rgba(24,230,175,.13),transparent 64%),
    radial-gradient(720px 460px at 108% 10%,rgba(243,172,53,.10),transparent 66%),
    linear-gradient(180deg,var(--rezz-c-page),#071928 48%,#061522 100%);
  color:var(--rezz-c-ink);
  font-family:var(--rezz-font);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
body.rezz-site::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.42;
  background-image:
    linear-gradient(var(--rezz-c-grid) 1px,transparent 1px),
    linear-gradient(90deg,var(--rezz-c-grid) 1px,transparent 1px);
  background-size:72px 72px;
  -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),transparent 72%);
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),transparent 72%);
}
.rezz-site *{box-sizing:border-box}
.rezz-section,.rezz-section :where(h1,h2,h3,h4,h5,h6,p,li,a,span,strong,em,label,input,select,textarea,button),
.rezz-header,.rezz-header :where(a,span,button),.rezz-footer,.rezz-footer :where(h1,h2,h3,h4,h5,h6,p,li,a,span){font-family:var(--rezz-font)!important}
.rezz-section{position:relative;isolation:isolate;padding:72px 24px!important;background:transparent!important;color:var(--rezz-c-ink)}
.rezz-section::before{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(520px 260px at 8% 55%,rgba(24,230,175,.035),transparent 72%),radial-gradient(520px 260px at 92% 45%,rgba(243,172,53,.03),transparent 72%)}
.rezz-shell{width:min(100%,var(--rezz-ct-max))!important;max-width:var(--rezz-ct-max)!important;margin-inline:auto!important;position:relative;z-index:2}

/* typography */
.rezz-heading .elementor-heading-title{margin:0;color:var(--rezz-c-ink)!important;font-weight:700!important;line-height:1.14;letter-spacing:-.035em;text-wrap:balance}
.rezz-heading .elementor-heading-title{font-size:var(--rezz-fs-h2)!important}
.rezz-heading--hero .elementor-heading-title{font-size:var(--rezz-fs-display)!important;line-height:1.03;letter-spacing:-.045em;max-width:15ch}
.rezz-heading--card .elementor-heading-title,.rezz-heading--step .elementor-heading-title,.rezz-heading--footer .elementor-heading-title{font-size:var(--rezz-fs-h3)!important;letter-spacing:-.02em}
.rezz-heading--section .elementor-heading-title{font-size:clamp(30px,2.2vw,42px)!important}
.rezz-heading--center{text-align:center;width:100%}
.rezz-heading--center .elementor-heading-title{margin-inline:auto}
.rezz-accent-amber{color:var(--rezz-c-brand-amber)!important}
.rezz-accent-teal{color:var(--rezz-c-brand-teal)!important}
.rezz-text{color:var(--rezz-c-ink-muted)!important;font-size:var(--rezz-fs-body);line-height:1.72}
.rezz-text p{margin:0 0 10px}.rezz-text p:last-child{margin-bottom:0}.rezz-text strong{color:var(--rezz-c-ink)!important;font-weight:650}
.rezz-text--lede{color:#B6C7CF!important;font-size:16px;line-height:1.68;max-width:62ch}
.rezz-text--intro{max-width:72ch;margin-inline:auto}.rezz-text--center{text-align:center;width:100%}

/* eyebrow: target-style centered label with hairlines */
.rezz-eyebrow{width:fit-content;color:var(--rezz-c-brand-teal)!important}
.rezz-eyebrow p{margin:0;display:flex;align-items:center;gap:8px;color:var(--rezz-c-brand-teal)!important;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.rezz-eyebrow p::before{content:"";width:22px;height:2px;border-radius:99px;background:linear-gradient(90deg,var(--rezz-c-brand-amber),var(--rezz-c-brand-teal))}
.rezz-eyebrow--center{margin-inline:auto;text-align:center}.rezz-eyebrow--center p::after{content:"";width:22px;height:2px;border-radius:99px;background:linear-gradient(90deg,var(--rezz-c-brand-teal),var(--rezz-c-brand-amber))}

/* cards */
.rezz-card{position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(18,45,61,.90),rgba(8,27,40,.96))!important;border:1px solid var(--rezz-c-border)!important;border-radius:var(--rezz-r-md)!important;box-shadow:var(--rezz-sh-card)!important;transition:transform var(--rezz-mo-base) var(--rezz-mo-ease),border-color var(--rezz-mo-base),box-shadow var(--rezz-mo-base)}
.rezz-card::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(24,230,175,.65),rgba(243,172,53,.44),transparent);opacity:.7}
.rezz-card::after{content:"";position:absolute;inset:auto -34% -55% auto;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(24,230,175,.08),transparent 65%);pointer-events:none}
.rezz-card:hover{transform:translateY(-5px);border-color:rgba(24,230,175,.34)!important;box-shadow:var(--rezz-sh-raised)!important}
.rezz-card--alt,.rezz-card--fit,.rezz-card--career,.rezz-card--route{background:linear-gradient(180deg,rgba(14,39,54,.94),rgba(7,24,36,.98))!important}
.rezz-card--case{border-left:1px solid rgba(24,230,175,.32)!important}

/* icon box */
.rezz-icon-box .elementor-icon-box-icon{margin-bottom:12px!important}
.rezz-icon-box .elementor-icon{display:inline-flex!important;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:rgba(24,230,175,.08)!important;color:var(--rezz-c-brand-teal)!important;border:1px solid rgba(24,230,175,.24);box-shadow:0 0 18px rgba(24,230,175,.10)}
.rezz-icon-box .elementor-icon-box-title{margin:0 0 6px!important;color:var(--rezz-c-ink)!important;font-size:17px!important;line-height:1.28;font-weight:650!important}
.rezz-icon-box .elementor-icon-box-description{margin:0;color:var(--rezz-c-ink-muted)!important;font-size:12.5px!important;line-height:1.55}
.rezz-icon-box--service{text-align:center}.rezz-icon-box--service .elementor-icon{width:50px;height:50px;font-size:21px}.rezz-icon-box--service .elementor-icon-box-title{font-size:15px!important}

/* buttons */
.rezz-button .elementor-button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:9px!important;padding:11px 19px!important;font-size:12px!important;line-height:1.2;font-weight:700!important;text-decoration:none!important;transition:transform var(--rezz-mo-fast),box-shadow var(--rezz-mo-fast),background var(--rezz-mo-fast),border-color var(--rezz-mo-fast)}
.rezz-button--primary .elementor-button{color:#042016!important;background:linear-gradient(135deg,#20E2AA,#12BA8E)!important;border:1px solid rgba(111,255,217,.65)!important;box-shadow:var(--rezz-sh-teal)!important}
.rezz-button--primary .elementor-button:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(24,230,175,.27)!important}
.rezz-button--whatsapp .elementor-button{background:linear-gradient(135deg,#24E887,#13B965)!important;border-color:rgba(120,255,179,.55)!important;color:white!important;box-shadow:var(--rezz-sh-whatsapp)!important}
.rezz-button--secondary .elementor-button{color:var(--rezz-c-ink)!important;background:rgba(255,255,255,.035)!important;border:1px solid rgba(171,206,216,.20)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important}
.rezz-button--secondary .elementor-button:hover{border-color:rgba(24,230,175,.34)!important;background:rgba(24,230,175,.06)!important}
.rezz-button--link .elementor-button{min-height:0;padding:0!important;background:none!important;border:0!important;color:var(--rezz-c-brand-teal)!important;box-shadow:none!important;font-size:11px!important;border-radius:0!important}
.rezz-button--link .elementor-button:hover{color:#6CFFD8!important;transform:translateX(3px)}
.rezz-button--center{text-align:center;width:100%;margin-top:8px}.rezz-button--center .elementor-button{margin-inline:auto}

/* image frames */
.rezz-media-frame{position:relative;border:1px solid rgba(24,230,175,.22)!important;border-radius:16px!important;background:linear-gradient(180deg,rgba(20,52,66,.82),rgba(8,26,39,.94))!important;box-shadow:0 22px 60px rgba(0,0,0,.36),0 0 34px rgba(24,230,175,.08)!important;overflow:hidden}
.rezz-image img{display:block;max-width:100%;height:auto}.rezz-image--result img,.rezz-image--insight img{width:100%;object-fit:cover}
.rezz-image--logo-strip img{max-height:42px!important;width:auto!important;max-width:92%!important;object-fit:contain;filter:saturate(.75) brightness(1.18) contrast(.9)}
.rezz-image--cert img{width:100%;height:170px!important;object-fit:cover;object-position:top;border-radius:8px}

/* inline icon lists */
.rezz-icon-list .elementor-icon-list-items{margin:0;padding:0;list-style:none}.rezz-icon-list .elementor-icon-list-item{color:var(--rezz-c-ink-muted)!important;font-size:13px;line-height:1.55}.rezz-icon-list .elementor-icon-list-icon i{color:var(--rezz-c-brand-teal)!important;font-size:12px}
.rezz-icon-list--prose .elementor-icon-list-item,.rezz-icon-list--card .elementor-icon-list-item{padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05)}

/* grids shipped throughout the package */
.rezz-grid-row{display:flex!important;flex-wrap:wrap!important;align-items:stretch!important;gap:14px!important}.rezz-grid-row--cols-2>.rezz-card{flex:1 1 calc(50% - 14px)}.rezz-grid-row--cols-3>.rezz-card{flex:1 1 calc(33.333% - 14px)}.rezz-grid-row--cols-4>.rezz-card{flex:1 1 calc(25% - 14px)}.rezz-grid-row--cols-5>.rezz-card{flex:1 1 calc(20% - 14px)}

/* process / steps */
.rezz-step{display:flex!important;align-items:flex-start!important;gap:16px!important;padding:18px!important;background:linear-gradient(180deg,rgba(16,42,56,.88),rgba(7,25,37,.94))!important;border:1px solid var(--rezz-c-border)!important;border-radius:14px!important;box-shadow:var(--rezz-sh-card)!important}.rezz-step-num p{margin:0;width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:10px;color:#061522!important;background:linear-gradient(135deg,var(--rezz-c-brand-amber),var(--rezz-c-brand-amber-dp));font-size:15px;font-weight:800;box-shadow:0 8px 20px rgba(243,172,53,.18)}

/* accordion */
.rezz-accordion .elementor-accordion-item{border:1px solid var(--rezz-c-border)!important;border-radius:12px!important;margin-bottom:10px;overflow:hidden;background:rgba(10,31,45,.88)!important}.rezz-accordion .elementor-tab-title,.rezz-accordion .elementor-accordion-title{color:var(--rezz-c-ink)!important;font-size:15px!important;font-weight:650!important}.rezz-accordion .elementor-accordion-icon{color:var(--rezz-c-brand-teal)!important}.rezz-accordion .elementor-tab-content{border-top:1px solid rgba(255,255,255,.05)!important;color:var(--rezz-c-ink-muted)!important;font-size:13px;line-height:1.7}

/* forms */
.rezz-form .elementor-field-group>label{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.rezz-form .elementor-field{min-height:42px!important;padding:10px 12px!important;border-radius:8px!important;border:1px solid rgba(138,187,201,.15)!important;background:rgba(7,24,36,.76)!important;color:var(--rezz-c-ink)!important;font-size:12px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}.rezz-form textarea.elementor-field{min-height:92px!important;resize:vertical}.rezz-form .elementor-field::placeholder{color:#6E8793!important}.rezz-form .elementor-field:focus{outline:none!important;border-color:rgba(24,230,175,.46)!important;box-shadow:0 0 0 3px rgba(24,230,175,.07)!important}.rezz-form .elementor-button{border:0!important;border-radius:8px!important;background:linear-gradient(135deg,#19CE9C,#0EA87E)!important;color:#fff!important;font-size:12px!important;font-weight:700!important;padding:11px 18px!important;box-shadow:var(--rezz-sh-teal)!important}

/* body page sections beyond home */
.rezz-section:not(.rezz-home--section) .rezz-heading:not(.rezz-heading--hero):not(.rezz-heading--card):not(.rezz-heading--step){text-align:center;width:100%}.rezz-section:not(.rezz-home--section) .rezz-heading:not(.rezz-heading--hero):not(.rezz-heading--card):not(.rezz-heading--step) .elementor-heading-title{margin-inline:auto}.rezz-section--prose .rezz-shell--prose{max-width:900px!important}.rezz-section--prose .rezz-text--prose{padding:18px 20px;background:linear-gradient(180deg,rgba(15,40,54,.72),rgba(8,26,39,.78));border:1px solid var(--rezz-c-border);border-radius:12px;box-shadow:var(--rezz-sh-card);font-size:15px;line-height:1.82}.rezz-section--breadcrumb{padding-block:14px!important;border-bottom:1px solid rgba(255,255,255,.045)}.rezz-breadcrumb{color:var(--rezz-c-ink-muted)!important;font-size:11px}.rezz-section--cta .rezz-shell--cta{padding:34px;border:1px solid rgba(24,230,175,.22);border-radius:20px;background:radial-gradient(420px 200px at 10% 0,rgba(24,230,175,.09),transparent 70%),linear-gradient(180deg,rgba(15,43,57,.92),rgba(7,25,38,.96));box-shadow:var(--rezz-sh-raised)}.rezz-section--cta .rezz-heading,.rezz-section--cta .rezz-text{text-align:center;margin-inline:auto}.rezz-section--cta .rezz-button{width:100%;text-align:center}.rezz-section--cta .rezz-button .elementor-button{margin-inline:auto}

/* motion */
.rezz-anim{opacity:0;transform:translateY(14px)}.rezz-anim.rezz-in{opacity:1;transform:none;transition:opacity var(--rezz-mo-slow) var(--rezz-mo-ease),transform var(--rezz-mo-slow) var(--rezz-mo-ease)}
@media (prefers-reduced-motion:reduce){.rezz-anim{opacity:1!important;transform:none!important}.rezz-card,.rezz-button .elementor-button{transition:none!important}}
