/* Hami Academy reference theme for Hami Hozur: deep navy + electric blue. */
:root {
  --bg: #0b1017;
  --c: #141b24;
  --card: #151d27;
  --t: #e8eef6;
  --text: #e8eef6;
  --m: #96a7ba;
  --muted: #96a7ba;
  --p: #0789e8;
  --p2: #39b6ff;
  --brand: #0789e8;
  --b: #273444;
  --border: #273444;
  --g: #4caf80;
  --o: #e2b65d;
  --r: #d85b5b;
  color-scheme: dark;
}
html { color-scheme: dark; background: var(--bg); scroll-behavior: smooth; }
body { background: var(--bg) !important; color: var(--t) !important; }
::selection { background: #0789e8; color: #fff; }
a { color: var(--p2); }
a:hover { color: #8bd4ff; }

/* Shared header, brand and navigation */
header, header.top, header:not(.top) {
  background: rgba(20,27,36,.96) !important;
  border-color: var(--b) !important;
  color: var(--t) !important;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
.logo, .brand { color: var(--p2) !important; }
.logo img, .brand img, .lg img { filter: none; }
.nav-links a, .site-nav a, .nav-public a, .site-login, .nav-logout { color: var(--t); }
.nav-links a:hover, .site-nav a:hover, .mobile-nav-panel a:hover, .site-mobile-panel a:hover {
  background: #102c43 !important; color: #39b6ff !important;
}
.mobile-nav summary, .site-mobile-nav > summary, .mobile-nav-panel, .site-mobile-panel {
  background: #151d27 !important; color: var(--t) !important; border-color: var(--b) !important;
}
.role-pill { background: #102c43 !important; color: #39b6ff !important; border-color: #17476a !important; }

/* Primary blue actions, calm secondary actions, and readable touch controls */
button, .btn, .button, .site-nav .button, .nav-actions .nav-button:not(.s) {
  background: linear-gradient(135deg, #078fe9, #0565b7) !important;
  color: #fff !important;
  border: 1px solid #0789e8 !important;
  box-shadow: 0 8px 22px #006fbd22 !important;
}
button:hover, .btn:hover, .button:hover { filter: brightness(1.04); }
button.s, .btn.s, .button.s, .button.alt, .site-login, .nav-logout, .nav-actions .nav-button.s {
  background: #141b24 !important;
  color: #e8eef6 !important;
  border: 1px solid #2b3949 !important;
  box-shadow: none !important;
}
button.d, .btn.d, .button.d { background: #8f2727 !important; border-color: #b84c4c !important; color: #fff !important; }
button:disabled { opacity: .55; }

/* App dashboard, landing page, forms, cards and tables */
.card, .tile, .panel, .preview-panel, .strip, .inst, .trust-note,
.extra-features, .faq-list details, .guide-section > details, .footer-guides,
.preview-panel, .mobile-nav-panel, .site-mobile-panel, .auth-note, details,
.preview-label, .chips span, .tabs button {
  background: #151d27 !important;
  color: var(--t) !important;
  border-color: var(--b) !important;
  box-shadow: none;
}
.card h3, .tile h3, section.sec > h2, .sec h2, h1, h2, h3, .preview-head,
.extra-features summary, .faq-list summary, .guide-summary, .footer-guides summary {
  color: var(--t);
}
.hero h1 span, .eb, .eyebrow, .strip b, .preview-time, .crumb a { color: var(--p2) !important; }
.hero h1 span { background: none !important; -webkit-text-fill-color: var(--p2) !important; }
.hero p, .sub, .card p, .tile p, .mut, .muted, .preview-foot, .copyright, footer { color: var(--m) !important; }
.hero .bg, .feature-symbol { background: #102c43 !important; color: #39b6ff !important; border: 1px solid #17476a; }
.strip { background: linear-gradient(115deg, #0874c5, #07549a) !important; border-color: #087bd0 !important; }
.cta {
  background: linear-gradient(135deg, #11263a, #101821 72%) !important;
  border: 1px solid #1d4e73 !important;
  color: var(--t) !important;
}
.cta h2 { color: #39b6ff !important; }
.cta p { color: #c2d0df !important; }
.cta .btn, .cta .button, .cta button { background: linear-gradient(135deg, #078fe9, #0565b7) !important; color: #fff !important; }
.cta .btn.s, .cta .button.s, .cta .button.alt, .cta button.s { background: #141b24 !important; color: #e8eef6 !important; border-color: #2b3949 !important; }

input, select, textarea {
  background: #101720 !important; color: var(--t) !important;
  border-color: #2b4054 !important; caret-color: #39b6ff;
}
input::placeholder, textarea::placeholder { color: #8496aa !important; opacity: 1; }
label { color: #cbd7e4 !important; }
input[type="checkbox"], input[type="radio"] { accent-color: #0789e8; }
:focus-visible { outline: 3px solid #39b6ff !important; outline-offset: 3px; }
table, th, td { background: #151515 !important; color: var(--t) !important; border-color: var(--b) !important; }
th { color: #39b6ff !important; }
.tabs button.on, .tab.on, .active { border-color: #0789e8 !important; }
footer, footer.ft { border-color: var(--b) !important; }
.footer-primary a, .ft a, footer a { color: var(--m); }

/* Keep dark visual identity stable regardless of device colour preference. */
@media (prefers-color-scheme: light) {
  :root { color-scheme: dark; }
  body { background: var(--bg) !important; color: var(--t) !important; }
}
@media (max-width: 700px) {
  .mobile-nav-panel, .site-mobile-panel { box-shadow: 0 16px 38px rgba(0,0,0,.45) !important; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}


/* Academy Hami reference landing: deep navy + electric blue */
:root{--bg:#0b1017;--c:#141b24;--card:#151d27;--t:#e8eef6;--text:#e8eef6;--m:#96a7ba;--muted:#96a7ba;--p:#0789e8;--p2:#39b6ff;--brand:#0789e8;--b:#273444;--border:#273444;color-scheme:dark}
html,body{background:#0b1017!important;color:#e8eef6!important}
header,header.top,header:not(.top){background:rgba(20,27,36,.96)!important;border-color:#273444!important}
.logo,.brand{color:#0789e8!important}.logo img,.brand img,.lg img{filter:none!important}
.nav-links a,.site-nav a,.nav-public a,.site-login,.nav-logout{color:#9eacbd}
button,.btn,.button,.site-nav .button,.nav-actions .nav-button:not(.s){background:linear-gradient(135deg,#078fe9,#0565b7)!important;color:white!important;border:1px solid #0789e8!important;box-shadow:0 8px 22px #006fbd22!important}
button.s,.btn.s,.button.s,.button.alt,.site-login,.nav-logout,.nav-actions .nav-button.s{background:#141b24!important;color:#e8eef6!important;border:1px solid #2b3949!important}
.card,.tile,.panel,.preview-panel,.strip,.inst,.trust-note,.extra-features,.faq-list details,.guide-section>details,.footer-guides,.mobile-nav-panel,.site-mobile-panel,.auth-note,details,.preview-label,.chips span,.tabs button{background:#151d27!important;color:#e8eef6!important;border-color:#273444!important}
.card h3,.tile h3,section.sec>h2,.sec h2,h1,h2,h3,.preview-head,.extra-features summary,.faq-list summary,.guide-summary,.footer-guides summary{color:#e8eef6}
.hero h1 span,.eb,.eyebrow,.strip b,.preview-time,.crumb a{color:#39b6ff!important}.hero h1 span{background:none!important;-webkit-text-fill-color:#39b6ff!important}
.hero p,.sub,.card p,.tile p,.mut,.muted,.preview-foot,.copyright,footer{color:#96a7ba!important}
.hero .bg,.feature-symbol{background:#102c43!important;color:#39b6ff!important;border:1px solid #17476a}
.strip{background:linear-gradient(115deg,#0874c5,#07549a)!important;border-color:#087bd0!important}
.cta{background:linear-gradient(135deg,#11263a,#101821 72%)!important;border:1px solid #1d4e73!important}.cta h2{color:#39b6ff!important}.cta p{color:#c2d0df!important}
input,select,textarea{background:#101720!important;color:#e8eef6!important;border-color:#2b4054!important}input::placeholder,textarea::placeholder{color:#8496aa!important}label{color:#cbd7e4!important}input[type=checkbox],input[type=radio]{accent-color:#0789e8}
.academy-hero{padding:76px 0 46px;display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:clamp(30px,7vw,100px);align-items:center;direction:rtl;min-height:480px}
.academy-hero .hero-copy{grid-column:2;grid-row:1}.academy-hero .hero-copy h1{font-size:clamp(32px,4.1vw,54px);line-height:1.55;font-weight:850;margin:0 0 12px}.academy-hero .hero-copy p{max-width:650px;font-size:17px;line-height:2;margin:0 0 24px}.academy-hero .bt{gap:10px}.academy-hero .btn.big{min-height:64px;padding:16px 24px;border-radius:13px;font-size:17px;font-weight:750}.academy-hero .chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.academy-hero .chips span{padding:7px 13px;border:1px solid #283747;border-radius:999px;font-size:12px;color:#9eacbd!important}
.gps-demo{grid-column:1;grid-row:1;display:flex;justify-content:center;align-items:center}.gps-phone{width:min(100%,290px);min-height:390px;border:11px solid #0c2033;background:#151c25;border-radius:42px;padding:28px 18px 20px;text-align:center;box-shadow:0 24px 65px #007bd52b;position:relative}.gps-status{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border-radius:999px;background:#10352c;color:#47d28c;font-size:12px;font-weight:700;white-space:nowrap}.gps-dot{width:7px;height:7px;border-radius:50%;background:#23bd73}.gps-radar{height:200px;width:200px;max-width:100%;margin:10px auto 18px;position:relative;border-radius:50%;background:radial-gradient(circle,#102d44 0 28%,transparent 29% 100%)}.gps-ring{position:absolute;display:block;border-radius:50%;border:2px solid #07518a;inset:22%}.ring-two{inset:5%;border:2px dashed #0789e8}.gps-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:23px;height:23px;border:4px solid #fff;background:#0789e8;border-radius:50%;z-index:2}.gps-person{position:absolute;left:68%;top:34%;width:13px;height:13px;border:2px solid white;border-radius:50%;background:#19bb71;z-index:3}.gps-checkin{display:flex;justify-content:center;align-items:center;width:100%;min-height:56px;border-radius:12px;text-decoration:none}.gps-caption{margin-top:14px;color:#8596a9;font-size:11px}.academy-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:22px 28px;border-radius:22px;margin:10px 0 35px;text-align:center}.academy-stats>div{display:flex;flex-direction:column;gap:8px}.academy-stats b{font-size:clamp(20px,2vw,27px);color:#fff!important}.academy-stats span{font-size:13px;color:#d0e8ff!important}
@media(max-width:800px){.academy-hero{grid-template-columns:1fr;gap:28px;padding:42px 0 28px;text-align:center;min-height:0}.academy-hero .hero-copy,.gps-demo{grid-column:1;grid-row:auto}.academy-hero .hero-copy{order:0}.gps-demo{order:1}.academy-hero .hero-copy p{margin-inline:auto}.academy-hero .bt,.academy-hero .chips{justify-content:center}.gps-phone{width:260px;min-height:360px}.gps-radar{width:180px;height:180px}.academy-stats{grid-template-columns:repeat(2,minmax(0,1fr));padding:20px 12px;gap:20px}.academy-hero .btn.big{min-height:54px;padding:12px 16px;font-size:15px}}
@media(max-width:420px){.academy-hero .bt{display:grid;grid-template-columns:1fr}.academy-hero .btn.big{width:100%}.academy-stats span{font-size:11px}}


/* Match the Academy Hami homepage reference and keep the same responsive layout. */
.w { max-width: 1132px !important; }
body::before {
  display: block !important; content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none;
  background: radial-gradient(620px 420px at 88% 0%, rgba(22,112,172,.34), transparent 72%),
              radial-gradient(520px 420px at 4% 34%, rgba(0,109,192,.18), transparent 72%),
              radial-gradient(500px 360px at 60% 100%, rgba(56,163,240,.08), transparent 72%);
}
.academy-hero .hero-copy h1 { color: #e8eef6 !important; }
.academy-hero .hero-copy h1 span { color: #39b6ff !important; -webkit-text-fill-color: #39b6ff !important; }
.gps-phone { background: #151c25 !important; border-color: #0c2033 !important; }
.gps-caption { color: #8596a9 !important; }


/* Homepage-only hero matching the Academy Hami reference. App screens and content pages are untouched. */
.academy-home-phone-fix {
  display:grid; grid-template-columns:minmax(0,1.22fr) minmax(240px,.78fr);
  gap:clamp(28px,5vw,70px); align-items:center; direction:rtl;
  padding:76px 0 46px; min-height:500px; position:relative;
}
.academy-home-phone-fix .academy-home-copy { grid-column:1; grid-row:1; min-width:0; }
.academy-home-phone-fix .academy-home-copy h1 { font-size:clamp(32px,4.2vw,52px); line-height:1.55; margin:0 0 14px; font-weight:850; letter-spacing:0; color:var(--t); }
.academy-home-phone-fix .academy-home-copy h1 span { color:#38a3f0; background:linear-gradient(120deg,#087ed0,#38a3f0,#7dd3fc); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.academy-home-phone-fix .academy-home-copy p { max-width:650px; color:var(--m); font-size:16px; line-height:2; margin:0 0 24px; }
.academy-home-actions { gap:10px; align-items:center; }
.academy-home-actions .big { min-height:62px; padding:14px 22px; border-radius:13px; font-size:16px; font-weight:750; text-decoration:none; display:inline-flex; justify-content:center; align-items:center; }
.academy-home-phone-fix .chips { display:flex; flex-wrap:wrap; gap:8px; margin-top:20px; }
.academy-home-phone-fix .chips span { padding:5px 13px; background:var(--c); border:1px solid var(--b); border-radius:999px; color:var(--m); font-size:12px; }
.academy-home-device { grid-column:2; grid-row:1; display:flex; align-items:center; justify-content:center; min-width:0; }
.academy-home-phone { width:min(100%,292px); min-height:414px; border:11px solid #0b2033; border-radius:44px; background:#151b23; padding:28px 17px 20px; position:relative; text-align:center; box-shadow:0 28px 76px rgba(0,109,192,.26); }
.academy-home-phone:before { content:""; position:absolute; top:9px; left:50%; transform:translateX(-50%); width:70px; height:6px; border-radius:8px; background:#263445; }
.academy-home-status { display:inline-flex; align-items:center; justify-content:center; gap:7px; padding:7px 12px; border-radius:999px; background:rgba(22,163,74,.15); color:#27c47d; font-size:12px; white-space:nowrap; }
.academy-home-status-dot { width:7px; height:7px; background:#22c779; border-radius:50%; }
.academy-home-radar { width:100%; max-width:202px; height:auto; display:block; margin:12px auto 18px; overflow:visible; }
.academy-home-radar-outer { fill:rgba(0,109,192,.04); stroke:#078be2; stroke-width:1.7; stroke-dasharray:5 5; }
.academy-home-radar-mid { fill:rgba(0,109,192,.04); stroke:#0e426d; stroke-width:2; }
.academy-home-radar-inner { fill:rgba(0,109,192,.08); stroke:#173b5b; stroke-width:1.3; }
.academy-home-radar-center { fill:#087ed0; stroke:#fff; stroke-width:3.5; }
.academy-home-radar-person { fill:#18bd73; stroke:#fff; stroke-width:2.5; }
.academy-home-checkin { display:flex; align-items:center; justify-content:center; min-height:58px; border-radius:13px; background:linear-gradient(135deg,#078be2,#005fae); color:#fff; font-weight:800; box-shadow:0 7px 18px rgba(0,109,192,.22); }
.academy-home-device-caption { margin-top:13px; color:#8698aa; font-size:11px; }
.academy-home-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; padding:20px 24px; border-radius:20px; text-align:center; margin:8px 0 28px; }
.academy-home-stats>div { display:flex; flex-direction:column; gap:7px; }
.academy-home-stats b { display:block; color:#fff; font-size:clamp(19px,2.1vw,27px); }
.academy-home-stats span { color:#d5e9fa; font-size:12px; }
@media(max-width:800px) {
  .academy-home-phone-fix { grid-template-columns:1fr; gap:28px; padding:42px 0 30px; min-height:0; text-align:center; }
  .academy-home-phone-fix .academy-home-copy,.academy-home-device { grid-column:1; grid-row:auto; }
  .academy-home-phone-fix .academy-home-copy { order:0; }
  .academy-home-phone-fix .academy-home-copy p { margin-inline:auto; }
  .academy-home-actions,.academy-home-phone-fix .chips { justify-content:center; }
  .academy-home-device { order:1; }
  .academy-home-phone { width:260px; min-height:380px; }
  .academy-home-radar { max-width:178px; }
  .academy-home-actions .big { min-height:54px; padding:12px 15px; }
  .academy-home-stats { grid-template-columns:repeat(2,minmax(0,1fr)); padding:19px 12px; gap:18px 8px; }
}
@media(max-width:420px) {
  .academy-home-actions { display:grid; grid-template-columns:1fr; width:100%; }
  .academy-home-actions .big { width:100%; }
  .academy-home-phone { width:min(100%,250px); }
  .academy-home-stats span { font-size:11px; }
}

/* Gentle, accessible motion: animated GPS rings and a floating phone mockup. */
.academy-home-phone { animation: academy-phone-float 5.5s ease-in-out infinite; transform-origin:center; }
.academy-home-radar-outer { transform-origin:100px 100px; animation: academy-radar-pulse 3.2s ease-out infinite; }
.academy-home-radar-mid { transform-origin:100px 100px; animation: academy-radar-pulse 3.2s ease-out 1.05s infinite; }
.academy-home-radar-person { transform-origin:137px 72px; animation: academy-gps-blink 2.2s ease-in-out infinite; }
.academy-home-status-dot { animation: academy-status-pulse 1.8s ease-in-out infinite; }
.academy-home-checkin { background-size:200% 100%; animation: academy-button-glow 5s ease-in-out infinite; }
.academy-home-testimonials { padding:36px 0 52px; direction:rtl; }
.academy-home-testimonials-head { text-align:center; max-width:760px; margin:0 auto 24px; }
.academy-home-testimonials-head h2 { color:var(--t); font-size:clamp(23px,3vw,34px); line-height:1.7; margin:10px 0; }
.academy-home-testimonials-head p { color:var(--m); line-height:1.9; font-size:13px; margin:0; }
.academy-home-testimonial-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.academy-home-testimonial { padding:22px; border:1px solid var(--b); border-radius:18px; background:linear-gradient(145deg,rgba(20,31,43,.88),rgba(15,22,31,.96)); box-shadow:0 12px 32px rgba(0,0,0,.12); transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease; }
.academy-home-testimonial:hover { transform:translateY(-5px); border-color:rgba(8,139,226,.55); box-shadow:0 18px 38px rgba(0,109,192,.14); }
.academy-home-stars { color:#f6c453; letter-spacing:3px; font-size:15px; }
.academy-home-testimonial>p { color:var(--t); line-height:2; font-size:14px; min-height:84px; margin:12px 0 20px; }
.academy-home-reviewer { display:flex; align-items:center; gap:11px; }
.academy-home-avatar { display:grid; place-items:center; width:42px; height:42px; flex:0 0 42px; border-radius:50%; background:linear-gradient(135deg,#078be2,#07579a); color:#fff; font-weight:800; }
.academy-home-reviewer span:last-child { display:flex; flex-direction:column; gap:4px; }
.academy-home-reviewer b { color:var(--t); font-size:12px; }
.academy-home-reviewer small { color:var(--m); font-size:10px; line-height:1.6; }
@keyframes academy-phone-float { 0%,100% { transform:translateY(0) rotate(0deg); } 50% { transform:translateY(-9px) rotate(.4deg); } }
@keyframes academy-radar-pulse { 0% { opacity:.95; } 65%,100% { transform:scale(1.06); opacity:.35; } }
@keyframes academy-gps-blink { 0%,100% { opacity:1; r:6; } 50% { opacity:.65; r:8; } }
@keyframes academy-status-pulse { 0%,100% { box-shadow:0 0 0 0 rgba(34,199,121,.3); } 50% { box-shadow:0 0 0 6px rgba(34,199,121,0); } }
@keyframes academy-button-glow { 0%,100% { filter:brightness(1); } 50% { filter:brightness(1.13); } }
@media(max-width:800px) {
  .academy-home-testimonial-grid { grid-template-columns:1fr; }
  .academy-home-testimonial>p { min-height:0; }
  .academy-home-testimonials { padding:28px 0 38px; }
}
@media(prefers-reduced-motion:reduce) {
  .academy-home-phone,.academy-home-radar-outer,.academy-home-radar-mid,.academy-home-radar-person,.academy-home-status-dot,.academy-home-checkin { animation:none!important; }
  .academy-home-testimonial { transition:none; }
  .academy-home-testimonial:hover { transform:none; }
}
