@font-face{font-family:Cairo;font-style:normal;font-weight:200 1000;font-display:swap;src:url(cairo-arabic.woff2) format('woff2');unicode-range:U+0600-06FF,U+0750-077F,U+08A0-08FF,U+FB50-FDFF,U+FE70-FEFF,U+10E60-10E7F,U+1EE00-1EEFF,U+200C-200E,U+2010-2011,U+204F,U+2E41}
@font-face{font-family:Cairo;font-style:normal;font-weight:200 1000;font-display:swap;src:url(cairo-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root {
  --gold: #c9a961;
  --gold-light: #f0dfa8;
  --gold-dark: #967634;
  --bg-dark: #080705;
  --bg-card: #12100c;
  --bg-card-hover: #191611;
  --border-gold: rgba(201,169,97,0.28);
  --border-gold-hover: rgba(201,169,97,0.7);
}

body.ahl-site{margin:0;font-size:16px;line-height:1.8;background:#080705;color:#ddd;font-family:Cairo,"Segoe UI",Tahoma,sans-serif}
body.ahl-site main{display:block}
a{color:var(--gold-light);transition:color .2s}
button,input,select,textarea{font:inherit}
a,button,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid #e8d5a3;outline-offset:5px}

/* SKIP LINK */
.ahl-skip{position:fixed;top:-100px;inset-inline-start:16px;z-index:10000;background:var(--gold);color:#111;padding:12px 20px}
.ahl-skip:focus{top:10px}
#ahl-content:focus{outline:none}

/* SAFE VISIBILITY: PREVENT BLACKOUTS */
.ahl-fade {
  opacity: 1 !important;
  transform: none !important;
  transition: opacity .65s cubic-bezier(.2,.8,.2,1), transform .65s cubic-bezier(.2,.8,.2,1);
}
/* SAFE ALWAYS VISIBLE */
body.js-ready .ahl-fade { opacity: 1 !important; transform: none !important; }
body.js-ready .ahl-fade.in {
  opacity: 1 !important;
  transform: translateY(0) !important;
}

/* NAVBAR */
.ahl-navbar{background:rgba(10,9,7,.96);border-bottom:1px solid rgba(201,169,97,.2);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.admin-bar .ahl-navbar{top:32px}
.ahl-nav-links a[aria-current=page]{color:var(--gold)}
.ahl-nav-links a.nav-gold-link{color:var(--gold-light);font-weight:700}
.gold-sparkle{color:#f0dfa8;margin-inline-end:4px}
.ahl-lang a{display:inline-flex;align-items:center;justify-content:center;min-width:35px;min-height:40px;color:#ccc;text-decoration:none;font-size:12px;border-radius:5px}
.ahl-lang a.active{color:#111;background:var(--gold)}
.ahl-custom-logo{max-width:65px;max-height:60px;object-fit:contain}
.ahl-logo-text{white-space:nowrap}
.ahl-symbol{display:inline-block;color:var(--gold);font-size:1.1em;font-style:normal}
.ahl-mark{width:1.25em;height:1.25em;vertical-align:middle;display:inline-block;flex-shrink:0}

/* SECTION PADDING & HEADERS */
.ahl-sec-pad{scroll-margin-top:110px;padding-top:90px;padding-bottom:90px}
html{scroll-padding-top:110px}
.ahl-sec-head{text-align:center;max-width:880px;margin:0 auto 55px}
.ahl-sec-label{display:inline-block;font-size:.84rem;text-transform:uppercase;letter-spacing:2px;color:var(--gold);background:rgba(201,169,97,.12);border:1px solid rgba(201,169,97,.3);padding:6px 18px;border-radius:22px;margin-bottom:15px;font-weight:700}
.ahl-sec-title{font-size:clamp(1.95rem,3.6vw,2.9rem);line-height:1.35;margin:0 0 16px;color:#f4f0e6;font-weight:800}
.ahl-sec-desc{color:#b6ada0;font-size:1.06rem;line-height:1.75;margin:0}
.gold{color:var(--gold-light)}

/* ==========================================================================
   1. HERO SLIDER & INNOVATIVE SCALE OF JUSTICE (الميزان بفكره جديدة وواضح)
   ========================================================================== */
.ahl-hero-slider-wrap{position:relative;overflow:hidden;min-height:760px;background:#090806;border-bottom:1px solid rgba(201,169,97,.25)}
.ahl-slider{position:relative;width:100%;height:100%;min-height:760px}
.ahl-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .75s cubic-bezier(.2,.8,.2,1),transform .75s ease;z-index:1;display:flex;align-items:center;background:#090806}
.ahl-slide.active{opacity:1;visibility:visible;z-index:2;position:relative}

.ahl-slide-bg{position:absolute;inset:0;pointer-events:none;z-index:1}
.ahl-slide-bg-scale{background:radial-gradient(circle at 75% 45%,rgba(201,169,97,.18) 0%,transparent 65%),radial-gradient(circle at 15% 75%,rgba(18,15,10,.8) 0%,#090806 70%)}
.ahl-slide-bg-founder{background:radial-gradient(circle at 75% 45%,rgba(201,169,97,.14) 0%,transparent 55%),#090806}
.ahl-slide-bg-team{background:radial-gradient(circle at 75% 45%,rgba(201,169,97,.15) 0%,transparent 60%),#090806}

.ahl-slide-content{display:grid;grid-template-columns:1.25fr 1fr;gap:45px;align-items:center;padding:130px 24px 90px;width:100%;z-index:4;position:relative}
.ahl-slide-text{max-width:680px}
.ahl-badge-gold{display:inline-flex;align-items:center;gap:8px;font-size:.85rem;color:var(--gold-light);background:rgba(201,169,97,.14);border:1px solid rgba(201,169,97,.35);padding:6px 18px;border-radius:24px;margin-bottom:20px;font-weight:700}
.badge-spark{color:#f0dfa8}
.ahl-slide-title{font-size:clamp(2.1rem,4vw,3.4rem);line-height:1.32;margin:0 0 20px;color:#f4f0e6;font-weight:800}
.ahl-slide-title .line{display:block}
.ahl-slide-desc{font-size:1.08rem;line-height:1.8;color:#ccc;margin:0 0 28px}
.ahl-slide-actions{display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin-bottom:30px}
.ahl-slide-pills{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.pill-item{display:flex;align-items:center;gap:8px;font-size:.88rem;color:#ddd;background:rgba(255,255,255,.04);border:1px solid rgba(201,169,97,.22);padding:7px 14px;border-radius:20px}
.pill-icon{color:var(--gold);font-weight:bold}

/* INNOVATIVE GRAND SCALE OF JUSTICE */
.ahl-scale-showcase-box{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:510px;width:100%}
.ahl-scale-aura{position:absolute;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(201,169,97,.22) 0%,rgba(201,169,97,.04) 55%,transparent 70%);filter:blur(30px);z-index:1;pointer-events:none;animation:scalePulse 5s ease-in-out infinite alternate}
@keyframes scalePulse{0%{transform:scale(.92);opacity:.6}100%{transform:scale(1.08);opacity:1}}

.ahl-scale-interactive-box{position:relative;z-index:3;width:100%;max-width:440px;display:grid;place-items:center}
.ahl-scale-svg{width:100%;max-width:410px;height:auto;filter:drop-shadow(0 0 35px rgba(201,169,97,.5))}
.sv-tilt{transition:transform .4s cubic-bezier(.2,.6,.2,1);transform-origin:210px 106px;transform-style:preserve-3d}
.sv-beam{transform-origin:210px 106px;transition:transform .5s ease}
.sv-panL,.sv-panR{transition:transform .5s ease}
.sv-plate{animation:svGlow 4s ease-in-out infinite}
@keyframes svGlow{0%,100%{filter:drop-shadow(0 0 6px rgba(201,169,97,.3))}50%{filter:drop-shadow(0 0 16px rgba(201,169,97,.75))}}

/* INTERACTIVE SCALE CONTROLLER PILLS */
.ahl-scale-controls{display:flex;gap:10px;justify-content:center;margin-top:16px;z-index:6;position:relative;flex-wrap:wrap}
.scale-ctrl-btn{background:rgba(18,15,11,.92);border:1px solid rgba(201,169,97,.4);color:#ccc;font-size:.82rem;font-weight:600;padding:7px 16px;border-radius:20px;cursor:pointer;transition:all .25s;backdrop-filter:blur(8px)}
.scale-ctrl-btn:hover,.scale-ctrl-btn.active{background:linear-gradient(135deg,#c9a961,#967634);color:#111;border-color:#f0dfa8;box-shadow:0 0 15px rgba(201,169,97,.45)}

/* SCALE SIDE BADGES (كفتي الميزان) */
.scale-pan-badge{position:absolute;z-index:8;background:rgba(15,13,10,.94);border:1px solid rgba(201,169,97,.45);backdrop-filter:blur(12px);border-radius:16px;padding:10px 14px;box-shadow:0 12px 35px rgba(0,0,0,.7);transition:all .35s;max-width:180px}
.scale-pan-badge strong{display:block;font-size:.86rem;color:#f0dfa8;margin-bottom:2px}
.scale-pan-badge small{display:block;font-size:.74rem;color:#aaa;line-height:1.3}
.badge-right{top:165px;inset-inline-end:-12px}
.badge-left{top:165px;inset-inline-start:-12px}
.scale-pan-badge:hover{border-color:var(--gold);transform:scale(1.05);box-shadow:0 0 20px rgba(201,169,97,.4)}

/* FOUNDER & TEAM SLIDE CARDS */
.ahl-founder-spot-card,.ahl-team-spot-card{position:relative;width:100%;max-width:440px;border-radius:24px;overflow:hidden;border:2px solid rgba(201,169,97,.4);box-shadow:0 25px 70px rgba(0,0,0,.85);background:#12100c}
.ahl-founder-spot-img{width:100%;height:470px;object-fit:cover;object-position:center 12%;display:block}
.ahl-team-spot-img{width:100%;height:430px;object-fit:cover;object-position:center 20%;display:block}
.ahl-founder-spot-overlay,.ahl-team-spot-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(10,9,7,.75) 75%,rgba(10,9,7,.96) 100%);pointer-events:none}
.ahl-founder-spot-badge,.ahl-team-spot-badge{position:absolute;bottom:16px;inset-inline:16px;background:rgba(15,13,10,.88);backdrop-filter:blur(14px);border:1px solid rgba(201,169,97,.45);border-radius:14px;padding:12px 16px;display:flex;align-items:center;gap:12px;box-shadow:0 10px 25px rgba(0,0,0,.6)}
.gold-seal{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#f0dfa8,#c9a961);color:#111;display:grid;place-items:center;font-size:18px;font-weight:bold;flex-shrink:0}
.ahl-founder-spot-badge h4,.ahl-team-spot-badge h4{margin:0;font-size:1rem;color:#f0dfa8}
.ahl-founder-spot-badge span,.ahl-team-spot-badge span{font-size:.78rem;color:#ccc}

/* SLIDER CONTROLS (MOVED OUTSIDE TEXT TO PREVENT OVERLAP) */
.ahl-slider-nav-bar{position:absolute;bottom:25px;inset-inline:25px;display:flex;justify-content:space-between;align-items:center;z-index:10;pointer-events:none}
.ahl-slider-nav-bar > *{pointer-events:auto}
.ahl-slider-arrows{display:flex;gap:10px}
.ahl-slider-btn{width:46px;height:46px;border-radius:50%;background:rgba(18,15,11,.88);border:1px solid rgba(201,169,97,.45);color:#f0dfa8;font-size:20px;display:grid;place-items:center;cursor:pointer;transition:all .25s;backdrop-filter:blur(10px)}
.ahl-slider-btn:hover{background:var(--gold);color:#111;box-shadow:0 0 20px rgba(201,169,97,.55);transform:scale(1.08)}
.ahl-slider-dots{display:flex;gap:10px}
.slider-dot{width:12px;height:12px;border-radius:50%;background:rgba(201,169,97,.3);border:1px solid rgba(201,169,97,.5);cursor:pointer;transition:all .3s;padding:0}
.slider-dot.active{width:36px;border-radius:8px;background:linear-gradient(90deg,#f0dfa8,#c9a961);box-shadow:0 0 12px rgba(201,169,97,.5)}

/* ==========================================================================
   2. ABOUT US (من نحن) - DIRECTLY AFTER HERO SLIDER
   ========================================================================== */
.ahl-about{background:#0b0a08;border-bottom:1px solid rgba(201,169,97,.18)}
.ahl-about-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:55px;align-items:center}
.ahl-about-img-frame{position:relative;border-radius:26px;overflow:hidden;border:2px solid rgba(201,169,97,.38);box-shadow:0 25px 75px rgba(0,0,0,.75);background:#13110d}
.ahl-about-img{width:100%;height:430px;object-fit:cover;object-position:center 20%;display:block}
.ahl-about-img-glass{position:absolute;bottom:16px;inset-inline:16px;background:rgba(12,11,9,.88);backdrop-filter:blur(12px);border:1px solid rgba(201,169,97,.4);border-radius:16px;padding:14px 18px;display:flex;align-items:center;gap:14px;box-shadow:0 12px 30px rgba(0,0,0,.6)}
.ahl-about-img-glass .badge-icon{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#f0dfa8,#c9a961);color:#111;display:grid;place-items:center;font-size:18px;font-weight:bold;flex-shrink:0}
.ahl-about-img-glass strong{display:block;font-size:1rem;color:var(--gold-light)}
.ahl-about-img-glass small{display:block;font-size:.82rem;color:#ccc}

.ahl-about-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:24px}
.stat-box{background:#14120e;border:1px solid rgba(201,169,97,.28);border-radius:16px;padding:18px 10px;text-align:center;transition:all .3s}
.stat-box:hover{border-color:var(--gold);transform:translateY(-3px);background:#1c1913}
.stat-num{font-size:1.75rem;color:var(--gold-light);display:block;font-weight:800;line-height:1.2;margin-bottom:4px}
.stat-lbl{font-size:.78rem;color:#bbb;line-height:1.4;display:block}

.about-lead-box h3{font-size:1.45rem;color:#f4f0e6;margin-top:0;margin-bottom:14px;line-height:1.4}
.about-lead-box p{color:#ccc;font-size:1.02rem;line-height:1.8;margin-bottom:14px}
.ahl-about-features-list{display:flex;flex-direction:column;gap:14px;margin:24px 0 32px}
.feat-item{display:flex;align-items:flex-start;gap:14px;background:rgba(255,255,255,.02);border:1px solid rgba(201,169,97,.18);padding:14px 18px;border-radius:14px;transition:all .25s}
.feat-item:hover{border-color:var(--gold);background:rgba(201,169,97,.04);transform:translateX(-4px)}
.feat-icon{width:28px;height:28px;border-radius:50%;background:rgba(201,169,97,.2);color:var(--gold-light);display:grid;place-items:center;font-size:14px;font-weight:bold;flex-shrink:0;margin-top:2px}
.feat-item strong{display:block;font-size:.96rem;color:#eee;margin-bottom:2px}
.feat-item p{margin:0;font-size:.86rem;color:#aaa;line-height:1.5}
.about-action-row{display:flex;gap:15px;align-items:center;flex-wrap:wrap}

/* ==========================================================================
   3. SERVICES SECTION (سيكشن الخدمات بطريقة مبتكرة)
   ========================================================================== */
.ahl-services{background:#080705;border-bottom:1px solid rgba(201,169,97,.18)}
.ahl-svc-toolbar{display:flex;flex-direction:column;align-items:center;gap:20px;margin-bottom:40px}
.ahl-svc-search-box{position:relative;width:100%;max-width:560px}
.svc-search-input{width:100%;height:50px;background:#14120e;border:1px solid rgba(201,169,97,.35);border-radius:25px;padding:12px 50px 12px 20px;color:#fff;font-size:.96rem;box-sizing:border-box;transition:all .3s}
.svc-search-input:focus{border-color:var(--gold);box-shadow:0 0 18px rgba(201,169,97,.25);outline:none}
.svc-search-icon{position:absolute;inset-inline-end:18px;top:50%;transform:translateY(-50%);color:var(--gold);font-size:1.1rem;pointer-events:none}

.ahl-svc-filters{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.svc-filter-btn{background:rgba(22,19,14,.85);border:1px solid rgba(201,169,97,.3);color:#bbb;padding:11px 22px;border-radius:30px;font-weight:600;font-size:.92rem;cursor:pointer;transition:all .25s;display:flex;align-items:center;gap:8px}
.svc-filter-btn:hover{background:#1f1b13;color:var(--gold-light);border-color:var(--gold)}
.svc-filter-btn.active{background:linear-gradient(135deg,#c9a961,#967634);color:#111;font-weight:700;border-color:#f0dfa8;box-shadow:0 6px 20px rgba(201,169,97,.4)}

.ahl-svc-innovative-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:26px}
.ahl-svc-card{background:#12100c;border:1px solid rgba(201,169,97,.24);border-radius:24px;padding:32px 26px;display:flex;flex-direction:column;transition:all .35s cubic-bezier(.2,.8,.2,1);position:relative;overflow:hidden}
.ahl-svc-card:hover{transform:translateY(-7px);border-color:var(--gold);box-shadow:0 22px 60px rgba(0,0,0,.85);background:#181510}
.svc-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.svc-code{font-size:1.6rem;font-weight:800;color:rgba(201,169,97,.35)}
.svc-tag{font-size:.75rem;background:rgba(201,169,97,.14);color:var(--gold-light);padding:4px 12px;border-radius:18px;border:1px solid rgba(201,169,97,.28);font-weight:600}
.svc-icon-box{font-size:32px;color:var(--gold);margin-bottom:12px;display:inline-block}
.ahl-svc-card h3{color:#f4f0e6;font-size:1.24rem;margin:0 0 10px;line-height:1.4}
.ahl-svc-card p{color:#bbb;font-size:.92rem;line-height:1.7;flex-grow:1;margin-bottom:16px}
.svc-points{list-style:none;padding:0;margin:0 0 22px;font-size:.85rem;color:#aaa;line-height:1.8}
.svc-points li{position:relative;padding-inline-start:18px}
.svc-points li::before{content:"✦";position:absolute;inset-inline-start:0;color:var(--gold);font-size:10px}
.svc-footer{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid rgba(201,169,97,.16)}
.svc-action-link{color:var(--gold-light);text-decoration:none;font-weight:700;font-size:.92rem}
.svc-action-link:hover{color:#fff;text-decoration:underline}
.svc-more{color:#888;text-decoration:none;font-size:.82rem}
.svc-more:hover{color:#ccc}

/* ==========================================================================
   4. ONLINE SERVICES & LEGAL TECH (الخدمات الأون لاين - بفيو كرياتيف)
   ========================================================================== */
.ahl-legaltech{background:#0a0907;border-bottom:1px solid rgba(201,169,97,.2)}
.ahl-calc-tabs{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:35px}
.ahl-calc-tab{background:rgba(24,21,16,.85);border:1px solid rgba(201,169,97,.3);color:#ccc;padding:13px 22px;border-radius:30px;font-weight:600;font-size:.92rem;cursor:pointer;transition:all .3s cubic-bezier(.2,.8,.2,1);display:flex;align-items:center;gap:9px}
.ahl-calc-tab:hover{background:rgba(35,30,22,1);color:var(--gold-light);border-color:var(--gold)}
.ahl-calc-tab.active{background:linear-gradient(135deg,#c9a961,#967634);color:#111;font-weight:700;border-color:#f0dfa8;box-shadow:0 8px 25px rgba(201,169,97,.4)}
.calc-icon{font-size:1.15rem}

.ahl-calc-panel{display:none}
.ahl-calc-panel.active{display:block;animation:ahlFadeIn .35s ease-out}
@keyframes ahlFadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

.ahl-calc-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:32px;background:#13110d;border:1px solid rgba(201,169,97,.32);border-radius:26px;padding:36px;box-shadow:0 20px 65px rgba(0,0,0,.65)}
.ahl-calc-form h3{color:var(--gold-light);margin-top:0;margin-bottom:6px;font-size:1.35rem}
.ahl-calc-form p.sub{color:#aaa;font-size:.88rem;margin-bottom:22px;line-height:1.5}
.calc-field{margin-bottom:20px}
.calc-field label{display:block;margin-bottom:8px;color:#ddd;font-size:.92rem;font-weight:600}

/* ROBUST FORM INPUTS & SELECTS (NO TRUNCATION, LUXURY DARK THEME) */
.calc-input, .calc-select{
  width: 100%;
  height: 52px;
  line-height: 1.5;
  background: #181510 !important;
  border: 1px solid rgba(201,169,97,.35) !important;
  border-radius: 12px;
  padding: 10px 16px;
  color: #fff !important;
  font-size: 1rem;
  box-sizing: border-box;
  transition: all .25s;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.calc-select{
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23c9a961' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: left 16px center !important;
  padding-left: 42px !important;
  cursor: pointer;
}
.calc-select option{
  background: #181510;
  color: #fff;
  padding: 10px;
}
.calc-input:focus, .calc-select:focus{
  border-color: var(--gold) !important;
  outline: none;
  box-shadow: 0 0 0 3px rgba(201,169,97,.25);
}
.field-hint{display:block;font-size:.78rem;color:#888;margin-top:6px}

/* LIVE RANGE SLIDER */
.calc-slider-wrap{display:flex;align-items:center;gap:12px;margin-top:8px}
.calc-range{flex-grow:1;height:6px;border-radius:3px;background:rgba(201,169,97,.25);outline:none;-webkit-appearance:none;cursor:pointer}
.calc-range::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,#f0dfa8,#c9a961);cursor:pointer;box-shadow:0 0 8px rgba(201,169,97,.6)}

/* CALCULATOR RESULT CARD (CREATIVE VISUALIZER) */
.ahl-calc-result{background:#181510;border:1px solid rgba(201,169,97,.38);border-radius:22px;padding:30px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:inset 0 0 25px rgba(0,0,0,.6)}
.result-header{margin-bottom:16px}
.result-badge{display:inline-block;font-size:.74rem;background:rgba(201,169,97,.18);color:var(--gold-light);padding:4px 12px;border-radius:16px;border:1px solid rgba(201,169,97,.3);margin-bottom:8px}
.result-header h4{margin:0;font-size:1.25rem;color:#f4f0e6}
.result-breakdown{display:flex;flex-direction:column;gap:12px;margin:20px 0}
.result-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid rgba(201,169,97,.15);font-size:.92rem;color:#ccc}
.result-row strong{color:#f0dfa8;font-size:.98rem}
.result-row.highlight{border-bottom:2px solid var(--gold);padding-top:14px;font-size:1.05rem}
.result-row.highlight strong{font-size:1.3rem}
.result-cta p{font-size:.84rem;color:#aaa;margin:0 0 14px;line-height:1.5}
.result-cta a.ahl-btn{width:100%;text-align:center;justify-content:center}

/* DIAGNOSTIC WIZARD (المستشار الرقمي السريع) */
.ahl-assessment-box{background:#13110d;border:1px solid rgba(201,169,97,.3);border-radius:24px;padding:36px;box-shadow:0 20px 60px rgba(0,0,0,.65);max-width:820px;margin:0 auto}
.assess-step h4{color:var(--gold-light);font-size:1.25rem;margin-top:0;margin-bottom:20px;line-height:1.5;text-align:center}
.assess-options{display:flex;flex-direction:column;gap:12px}
.assess-opt{background:#1a1712;border:1px solid rgba(201,169,97,.25);color:#eee;padding:16px 22px;border-radius:14px;text-align:start;cursor:pointer;font-size:.98rem;font-weight:500;transition:all .25s;display:flex;align-items:center;gap:12px}
.assess-opt:hover{border-color:var(--gold);background:#262117;color:var(--gold-light);transform:translateX(-4px)}
.assess-result-card{text-align:center;padding:30px 20px}
.assess-result-card .seal{font-size:42px;color:var(--gold);margin-bottom:14px;display:inline-block}
.assess-text{font-size:1.04rem;color:#eee;line-height:1.8;margin:22px 0;background:rgba(0,0,0,.35);padding:22px;border-radius:14px;border-inline-start:4px solid var(--gold);text-align:start}
.assess-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* ==========================================================================
   5. FOREIGNERS HUB & KNOW YOUR RIGHTS
   ========================================================================== */
.ahl-for-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin-bottom:35px}
.ahl-for-card{background:#14120e;border:1px solid rgba(201,169,97,.26);border-radius:22px;padding:28px;position:relative;display:flex;flex-direction:column;transition:all .35s cubic-bezier(.2,.8,.2,1)}
.ahl-for-card:hover{transform:translateY(-7px);border-color:var(--gold);box-shadow:0 22px 55px rgba(0,0,0,.75)}
.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.card-num{font-size:1.8rem;font-weight:800;color:rgba(201,169,97,.4)}
.card-tag{font-size:.74rem;background:rgba(201,169,97,.15);color:var(--gold-light);padding:4px 12px;border-radius:20px;border:1px solid rgba(201,169,97,.3);font-weight:600}
.ahl-for-card h3{color:#f4f0e6;font-size:1.25rem;margin:0 0 10px;line-height:1.4}
.ahl-for-card p{color:#bbb;font-size:.9rem;line-height:1.65;flex-grow:1}
.card-features{list-style:none;padding:0;margin:16px 0;font-size:.85rem;color:#aaa;line-height:1.7}
.card-features li{padding:4px 0;padding-inline-start:18px;position:relative}
.card-features li::before{content:"✓";position:absolute;inset-inline-start:0;color:var(--gold);font-weight:bold}
.card-link{display:inline-flex;align-items:center;gap:6px;color:var(--gold-light);text-decoration:none;font-weight:700;font-size:.92rem;margin-top:12px;transition:color .2s}
.card-link:hover{color:#fff}
.ahl-for-banner{background:linear-gradient(135deg,#1b1710,#282114);border:1px solid var(--gold);border-radius:24px;padding:35px 40px;display:flex;justify-content:space-between;align-items:center;gap:25px;flex-wrap:wrap;box-shadow:0 20px 60px rgba(0,0,0,.6)}
.ahl-for-banner .banner-content h3{color:#f0dfa8;margin-top:0;margin-bottom:8px;font-size:1.35rem}
.ahl-for-banner .banner-content p{color:#ccc;margin:0;max-width:680px;font-size:.95rem;line-height:1.65}

.ahl-rights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:24px}
.ahl-right-box{background:#13110d;border:1px solid rgba(201,169,97,.22);border-radius:20px;padding:28px;transition:all .3s cubic-bezier(.2,.8,.2,1)}
.ahl-right-box:hover{border-color:rgba(201,169,97,.55);background:#1a1711;transform:translateY(-4px);box-shadow:0 15px 40px rgba(0,0,0,.5)}
.right-icon{font-size:28px;margin-bottom:12px;color:var(--gold);display:inline-block}
.ahl-right-box h4{color:var(--gold-light);margin:0 0 10px;font-size:1.18rem;line-height:1.4}
.ahl-right-box p{color:#ccc;font-size:.92rem;line-height:1.75;margin-bottom:16px}
.legal-badge{display:inline-block;font-size:.74rem;color:#aaa;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);padding:4px 10px;border-radius:14px;font-weight:600}
.ahl-rights-cta{margin-top:45px;background:#16140f;border:1px solid rgba(201,169,97,.35);border-radius:22px;padding:30px 38px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;box-shadow:0 20px 50px rgba(0,0,0,.5)}
.ahl-rights-cta .cta-txt h3{color:var(--gold-light);margin-top:0;margin-bottom:6px;font-size:1.3rem}
.ahl-rights-cta .cta-txt p{color:#bbb;margin:0;font-size:.95rem}

/* TEAM SECTION EXISTING OVERRIDES */
.ahl-team-photo{position:relative;border-radius:28px;overflow:hidden;border:2px solid rgba(201,169,97,.35);height:500px;box-shadow:0 30px 80px rgba(0,0,0,.65);margin-bottom:60px}
.ahl-team-photo img{width:100%;height:100%;object-fit:cover;object-position:center 20%;animation:kenBurns 22s ease-in-out infinite alternate}
@keyframes kenBurns{0%{transform:scale(1)}100%{transform:scale(1.08)}}
.ahl-partner .ph{height:420px;overflow:hidden;position:relative;background:#111}
.ahl-partner .ph img{width:100%;height:100%;object-fit:cover;object-position:center 15%;transition:transform 1.1s cubic-bezier(.2,.6,.2,1)}
.ahl-partner:hover .ph img{transform:scale(1.07)}

/* RESPONSIVE */
@media (max-width: 820px) {
  .ahl-slide-content{grid-template-columns:1fr;padding-top:120px;padding-bottom:70px;gap:35px}
  .ahl-about-grid{grid-template-columns:1fr;gap:35px}
  .ahl-about-stats-row{grid-template-columns:repeat(2,1fr)}
  .ahl-calc-grid{grid-template-columns:1fr;padding:24px;gap:24px}
  .scale-pan-badge{position:static;max-width:none;width:100%;margin-top:10px}
  .ahl-for-banner,.ahl-rights-cta{padding:24px}
  .ahl-founder-spot-img{height:380px}
  .badge-right, .badge-left{position:static;display:none}
}


/* ==========================================================================
   6. INDIVIDUAL SERVICE PAGES & DETAIL STYLING (صفحات الخدمات مقروءة وراقية)
   ========================================================================== */
.ahl-page-head{
  padding: 140px 20px 50px;
  background: radial-gradient(circle at 50% 20%, rgba(201,169,97,.18) 0%, #090806 70%);
  border-bottom: 1px solid rgba(201,169,97,.25);
  text-align: center;
  position: relative;
}
.ahl-breadcrumb{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: .88rem;
  color: #888;
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(201,169,97,.2);
  padding: 6px 18px;
  border-radius: 20px;
  margin-bottom: 20px;
}
.ahl-breadcrumb a{
  color: var(--gold-light);
  text-decoration: none;
}
.ahl-breadcrumb a:hover{
  text-decoration: underline;
}
.ahl-head-badge{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: .82rem;
  color: var(--gold-light);
  background: rgba(201,169,97,.12);
  border: 1px solid rgba(201,169,97,.3);
  padding: 4px 14px;
  border-radius: 16px;
  margin-bottom: 14px;
  font-weight: 700;
}
.ahl-page-title{
  font-size: clamp(2rem, 3.8vw, 3rem);
  color: #f4f0e6;
  margin: 0 0 16px;
  font-weight: 800;
  line-height: 1.3;
}
.ahl-page-subtitle{
  font-size: 1.15rem;
  color: #cfc7ba;
  max-width: 760px;
  margin: 0 auto 28px;
  line-height: 1.7;
}
.ahl-head-actions{
  display: flex;
  justify-content: center;
  gap: 16px;
  flex-wrap: wrap;
}

/* SERVICE DETAIL LAYOUT */
.ahl-detail-wrap{
  padding-top: 50px;
  padding-bottom: 90px;
}
.ahl-detail-layout{
  display: grid;
  grid-template-columns: 1fr 380px;
  gap: 45px;
  align-items: start;
}
.ahl-detail-main{
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.ahl-detail-card{
  background: #12100c;
  border: 1px solid rgba(201,169,97,.28);
  border-radius: 24px;
  padding: 36px;
  box-shadow: 0 20px 60px rgba(0,0,0,.65);
}
.ahl-detail-card h2{
  color: #f4f0e6;
  font-size: 1.55rem;
  margin: 12px 0 18px;
  line-height: 1.4;
}
.lead-text{
  color: #ddd;
  font-size: 1.08rem;
  line-height: 1.9;
}
.card-section-title{
  color: var(--gold-light);
  font-size: 1.35rem;
  margin: 0 0 18px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.gold-icon{
  color: var(--gold);
}

/* 4 PILLARS GRID IN DETAIL */
.detail-pillars-grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.pillar-box{
  background: #181510;
  border: 1px solid rgba(201,169,97,.2);
  border-radius: 18px;
  padding: 22px;
  transition: all .3s;
}
.pillar-box:hover{
  border-color: var(--gold);
  background: #201c15;
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgba(0,0,0,.5);
}
.pillar-ico{
  font-size: 26px;
  color: var(--gold);
  margin-bottom: 10px;
}
.pillar-box h4{
  color: #f0dfa8;
  margin: 0 0 8px;
  font-size: 1.1rem;
}
.pillar-box p{
  color: #bbb;
  font-size: .92rem;
  line-height: 1.65;
  margin: 0;
}

/* CHECKLIST CARD */
.sub-lead{
  color: #aaa;
  font-size: .95rem;
  margin: 0 0 18px;
}
.ahl-checklist{
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.ahl-checklist li{
  background: #181510;
  border: 1px solid rgba(201,169,97,.2);
  border-radius: 14px;
  padding: 14px 20px;
  display: flex;
  align-items: center;
  gap: 14px;
  color: #eee;
  font-size: .96rem;
  transition: border-color .2s;
}
.ahl-checklist li:hover{
  border-color: var(--gold);
}
.check-mark{
  color: var(--gold);
  font-weight: bold;
  font-size: 1.2rem;
  flex-shrink: 0;
}

/* DISCLAIMER BOX */
.ahl-disclaimer-box{
  background: rgba(201,169,97,.06);
  border: 1px solid rgba(201,169,97,.28);
  border-radius: 16px;
  padding: 20px 24px;
  display: flex;
  gap: 16px;
  align-items: flex-start;
  color: #bbb;
  font-size: .88rem;
  line-height: 1.65;
}
.disc-icon{
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(201,169,97,.2);
  color: var(--gold);
  display: grid;
  place-items: center;
  font-weight: bold;
  flex-shrink: 0;
}
.ahl-disclaimer-box strong{
  color: #eee;
  display: block;
  margin-bottom: 4px;
}
.ahl-disclaimer-box p{
  margin: 0;
}

/* ASIDE STICKY CARD */
.aside-sticky-card{
  position: sticky;
  top: 110px;
  background: #14120e;
  border: 1px solid rgba(201,169,97,.38);
  border-radius: 24px;
  padding: 32px 28px;
  box-shadow: 0 25px 75px rgba(0,0,0,.75);
}
.aside-header{
  display: flex;
  align-items: center;
  gap: 14px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(201,169,97,.2);
  margin-bottom: 18px;
}
.aside-header h4{
  margin: 0;
  font-size: 1.12rem;
  color: #f0dfa8;
}
.aside-header span{
  font-size: .8rem;
  color: #aaa;
}
.aside-desc{
  color: #ccc;
  font-size: .92rem;
  line-height: 1.65;
  margin: 0 0 22px;
}
.aside-buttons{
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 24px;
}
.aside-btn{
  width: 100%;
  text-align: center;
  justify-content: center;
}
.aside-meta-list{
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 18px 0;
  border-top: 1px solid rgba(201,169,97,.16);
  border-bottom: 1px solid rgba(201,169,97,.16);
  margin-bottom: 20px;
}
.meta-row{
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: .86rem;
  color: #ccc;
}
.meta-icon{
  color: var(--gold);
  font-size: 16px;
  flex-shrink: 0;
  margin-top: 2px;
}
.meta-row strong{
  color: #eee;
}
.meta-row small{
  display: block;
  color: #999;
}
.aside-links-box h5{
  color: var(--gold-light);
  font-size: .9rem;
  margin: 0 0 10px;
}
.aside-links-box ul{
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.aside-links-box a{
  color: #bbb;
  text-decoration: none;
  font-size: .86rem;
  transition: color .2s;
}
.aside-links-box a:hover{
  color: var(--gold-light);
  text-decoration: underline;
}

/* ==========================================================================
   7. SITUATIONAL GUIDE (اعرف الخدمة المناسبة) & POLICIES
   ========================================================================== */
.ahl-guide-sec{
  padding: 40px 20px 90px;
}
.ahl-guide-grid{
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 24px;
}
.ahl-guide-card{
  background: #13110d;
  border: 1px solid rgba(201,169,97,.28);
  border-radius: 20px;
  padding: 28px;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  transition: all .3s cubic-bezier(.2,.8,.2,1);
}
.ahl-guide-card:hover{
  border-color: var(--gold);
  background: #1a1711;
  transform: translateY(-5px);
  box-shadow: 0 20px 50px rgba(0,0,0,.7);
}
.guide-card-top{
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
}
.guide-num{
  font-size: 1.6rem;
  font-weight: 800;
  color: var(--gold);
}
.guide-tag{
  font-size: .75rem;
  background: rgba(201,169,97,.15);
  color: var(--gold-light);
  padding: 4px 12px;
  border-radius: 14px;
  border: 1px solid rgba(201,169,97,.25);
}
.ahl-guide-card h3{
  color: #f4f0e6;
  font-size: 1.15rem;
  line-height: 1.5;
  margin: 0 0 20px;
  flex-grow: 1;
}
.guide-card-bottom{
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 14px;
  border-top: 1px solid rgba(201,169,97,.16);
}
.guide-svc-name{
  color: var(--gold-light);
  font-size: .92rem;
  font-weight: 700;
}
.guide-arrow{
  color: var(--gold);
  font-size: 1.2rem;
}

/* POLICY PAGES */
.ahl-policy-wrap{
  padding: 40px 20px 90px;
  max-width: 900px;
  margin: 0 auto;
}
.ahl-policy-card{
  background: #13110d;
  border: 1px solid rgba(201,169,97,.28);
  border-radius: 24px;
  padding: 45px;
  box-shadow: 0 25px 70px rgba(0,0,0,.65);
}
.policy-block{
  margin-bottom: 30px;
  padding-bottom: 24px;
  border-bottom: 1px solid rgba(201,169,97,.14);
}
.policy-block:last-of-type{
  border-bottom: none;
}
.policy-block h2{
  color: #f0dfa8;
  font-size: 1.35rem;
  margin: 0 0 12px;
}
.policy-block p{
  color: #ccc;
  font-size: 1.02rem;
  line-height: 1.8;
  margin: 0;
}
.policy-contact{
  margin-top: 30px;
  padding: 20px;
  background: #181510;
  border-radius: 14px;
  border: 1px solid rgba(201,169,97,.25);
  color: #bbb;
}
.policy-contact a{
  color: var(--gold-light);
  font-weight: bold;
}

/* RESPONSIVE ADDITIONS */
@media (max-width: 1000px) {
  .ahl-detail-layout{
    grid-template-columns: 1fr;
    gap: 35px;
  }
  .detail-pillars-grid{
    grid-template-columns: 1fr;
  }
  .aside-sticky-card{
    position: static;
  }
  .ahl-page-head{
    padding-top: 120px;
  }
}


/* ==========================================================================
   8. ANIMATED JUSTICE SYMBOLS & RIGHT-SIDE FLOATING ACTIONS
   ========================================================================== */

/* FREE CONSULTATION BADGE */
.free-badge {
  background: linear-gradient(135deg, #10b981, #059669);
  color: #fff;
  font-size: .75rem;
  font-weight: 800;
  padding: 3px 8px;
  border-radius: 12px;
  margin-inline-end: 8px;
  box-shadow: 0 0 10px rgba(16, 185, 129, 0.5);
  animation: freeBadgePulse 2s infinite ease-in-out;
}
@keyframes freeBadgePulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.08); }
}

/* SYMBOL STAGE (SLIDES 2 & 3) */
.ahl-symbol-stage {
  position: relative;
  width: 100%;
  max-width: 440px;
  min-height: 480px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.symbol-glow-back {
  position: absolute;
  width: 440px;
  height: 440px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(201, 169, 97, 0.22) 0%, rgba(201, 169, 97, 0.04) 55%, transparent 70%);
  filter: blur(35px);
  pointer-events: none;
  z-index: 1;
}

/* 1. GAVEL (الشاكوش القضائي) ANIMATION */
.ahl-gavel-robe-svg {
  width: 100%;
  max-width: 440px;
  height: auto;
  position: relative;
  z-index: 3;
  filter: drop-shadow(0 15px 40px rgba(0,0,0,.85));
}
.anim-gavel-arm {
  transform-origin: 345px 335px;
  animation: gavelStrikeCycle 3s cubic-bezier(0.25, 1, 0.5, 1) infinite;
}
@keyframes gavelStrikeCycle {
  0%, 15% {
    transform: rotate(0deg);
  }
  30% {
    /* Lift up high ready to strike */
    transform: rotate(-38deg) translateY(-20px);
  }
  42% {
    /* STRIKE DOWN HARD ON SOUND BLOCK */
    transform: rotate(4deg) translateY(6px);
  }
  48% {
    /* Small bounce */
    transform: rotate(-6deg) translateY(-3px);
  }
  54% {
    /* Rest on block */
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(0deg);
  }
}

/* SHOCKWAVES EXPANDING ON GAVEL STRIKE */
.anim-shockwave {
  transform-origin: 60px 30px;
  opacity: 0;
}
.anim-shockwave.wave1 {
  animation: shockwaveBoom1 3s cubic-bezier(0.1, 0.8, 0.3, 1) infinite;
}
.anim-shockwave.wave2 {
  animation: shockwaveBoom2 3s cubic-bezier(0.1, 0.8, 0.3, 1) infinite;
  animation-delay: 0.1s;
}
@keyframes shockwaveBoom1 {
  0%, 41% {
    opacity: 0;
    transform: scale(0.4);
  }
  43% {
    opacity: 1;
    transform: scale(0.6);
  }
  65% {
    opacity: 0;
    transform: scale(1.6);
  }
  100% {
    opacity: 0;
  }
}
@keyframes shockwaveBoom2 {
  0%, 43% {
    opacity: 0;
    transform: scale(0.5);
  }
  46% {
    opacity: 0.8;
    transform: scale(0.8);
  }
  72% {
    opacity: 0;
    transform: scale(2.1);
  }
  100% {
    opacity: 0;
  }
}

/* SPARKS EXPLOSION ON STRIKE */
.anim-sparks {
  opacity: 0;
  transform-origin: 320px 320px;
  animation: sparkFlash 3s ease-out infinite;
}
@keyframes sparkFlash {
  0%, 41% {
    opacity: 0;
    transform: scale(0.3);
  }
  43% {
    opacity: 1;
    transform: scale(1.2);
  }
  55% {
    opacity: 0;
    transform: scale(1.6);
  }
  100% {
    opacity: 0;
  }
}

/* 2. LAWYER'S ADVOCATE ROBE (روب المحاماة) ANIMATION */
.anim-lawyer-robe {
  animation: robeBreathe 6s ease-in-out infinite alternate;
  transform-origin: 150px 40px;
}
@keyframes robeBreathe {
  0% {
    transform: translate(40px, 40px) scale(1) rotate(0deg);
  }
  50% {
    transform: translate(40px, 36px) scale(1.02) rotate(1deg);
  }
  100% {
    transform: translate(40px, 42px) scale(0.99) rotate(-1deg);
  }
}

/* 3. COURTHOUSE (صرح المحكمة) ANIMATION */
.ahl-courthouse-svg {
  width: 100%;
  max-width: 440px;
  height: auto;
  position: relative;
  z-index: 3;
  filter: drop-shadow(0 15px 40px rgba(0,0,0,.85));
}
.anim-court-rays {
  transform-origin: 230px 220px;
  animation: courtRaySpin 45s linear infinite;
}
@keyframes courtRaySpin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}
.anim-courthouse-building {
  animation: courtGlowFloat 5s ease-in-out infinite alternate;
}
@keyframes courtGlowFloat {
  0% {
    filter: drop-shadow(0 0 10px rgba(201,169,97,0.3));
    transform: translate(45px, 60px) scale(1);
  }
  100% {
    filter: drop-shadow(0 0 25px rgba(201,169,97,0.7));
    transform: translate(45px, 55px) scale(1.01);
  }
}

/* ==========================================================================
   RIGHT-SIDE FIXED FLOATING ACTION BUTTONS (الزرارين للوات والاتصال يمين الشاشة)
   ========================================================================== */
.ahl-floating-actions {
  position: fixed;
  bottom: 30px;
  right: 25px;
  z-index: 99999;
  display: flex;
  flex-direction: column;
  gap: 14px;
  direction: rtl;
}

.floating-action-btn {
  display: flex;
  align-items: center;
  gap: 12px;
  background: rgba(14, 12, 9, 0.95);
  border: 1px solid rgba(201, 169, 97, 0.45);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  padding: 8px 18px 8px 10px;
  border-radius: 35px;
  text-decoration: none;
  box-shadow: 0 12px 35px rgba(0, 0, 0, 0.75);
  transition: all 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
  color: #fff;
}
.floating-action-btn:hover {
  transform: translateY(-4px) scale(1.04);
  border-color: var(--gold);
  box-shadow: 0 16px 45px rgba(0, 0, 0, 0.85);
}

.fa-icon-box {
  position: relative;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  flex-shrink: 0;
}
.fa-svg {
  width: 24px;
  height: 24px;
}

/* WHATSAPP BUTTON (FREE CONSULTATION) */
.wa-green {
  background: linear-gradient(135deg, #25d366, #128c7e);
  color: #fff;
  box-shadow: 0 0 16px rgba(37, 211, 102, 0.5);
}
.fa-pulse-ring {
  position: absolute;
  inset: -5px;
  border-radius: 50%;
  border: 2px solid #25d366;
  opacity: 0;
  animation: waPulseRing 2.2s infinite cubic-bezier(0.2, 0.8, 0.2, 1);
}
@keyframes waPulseRing {
  0% { transform: scale(0.85); opacity: 0.9; }
  100% { transform: scale(1.5); opacity: 0; }
}

/* CALL BUTTON */
.call-gold {
  background: linear-gradient(135deg, #f0dfa8, #c9a961);
  color: #111;
  box-shadow: 0 0 16px rgba(201, 169, 97, 0.45);
}

.fa-text {
  display: flex;
  flex-direction: column;
}
.fa-label-badge {
  font-size: 0.7rem;
  background: #10b981;
  color: #fff;
  font-weight: 800;
  padding: 1px 8px;
  border-radius: 10px;
  display: inline-block;
  width: fit-content;
  margin-bottom: 2px;
}
.fa-label-badge.badge-phone {
  background: rgba(201, 169, 97, 0.25);
  color: var(--gold-light);
  border: 1px solid rgba(201, 169, 97, 0.4);
}
.fa-main-text {
  font-size: 0.92rem;
  color: #f4f0e6;
  white-space: nowrap;
}

@media (max-width: 600px) {
  .ahl-floating-actions {
    right: 14px;
    bottom: 20px;
    gap: 10px;
  }
  .floating-action-btn {
    padding: 6px 12px 6px 8px;
  }
  .fa-icon-box {
    width: 38px;
    height: 38px;
  }
  .fa-svg {
    width: 20px;
    height: 20px;
  }
  .fa-main-text {
    font-size: 0.84rem;
  }
}


/* ==========================================================================
   9. INTERACTIVE ANIMATED JUSTICE SYMBOLS SHOWCASE (معرض رموز العدالة وسيادة القانون)
   ========================================================================== */

/* FIX FOR 940px - 1440px VIEWPORTS: PRESERVE 2-COLUMN HERO SLIDER */
@media (min-width: 821px) {
  .ahl-slide-content {
    display: grid !important;
    grid-template-columns: 1.18fr 0.92fr !important;
    gap: 35px !important;
    align-items: center !important;
    min-height: 670px !important;
    padding: 100px 24px 60px !important;
  }
  .ahl-slide-visual {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
  }
}

/* SECTION CONTAINER */
.ahl-justice-symbols-sec {
  background: radial-gradient(circle at 50% 10%, rgba(201, 169, 97, 0.08) 0%, #080705 60%);
  border-bottom: 1px solid rgba(201, 169, 97, 0.22);
  position: relative;
  overflow: hidden;
}

/* 8-CARD GRID */
.ahl-symbols-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  margin-bottom: 50px;
}
@media (max-width: 1200px) {
  .ahl-symbols-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 650px) {
  .ahl-symbols-grid {
    grid-template-columns: 1fr;
  }
}

/* SYMBOL CARD */
.ahl-symbol-card {
  background: rgba(18, 15, 11, 0.85);
  border: 1px solid rgba(201, 169, 97, 0.28);
  border-radius: 20px;
  padding: 30px 22px 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  position: relative;
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(10px);
}
.ahl-symbol-card:hover {
  transform: translateY(-8px);
  border-color: var(--gold);
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.7), 0 0 30px rgba(201, 169, 97, 0.3);
  background: rgba(22, 18, 13, 0.95);
}

/* CARD BADGE */
.symbol-card-badge {
  position: absolute;
  top: 14px;
  inset-inline-end: 16px;
  font-size: 0.72rem;
  font-weight: 700;
  color: var(--gold-light);
  background: rgba(201, 169, 97, 0.12);
  border: 1px solid rgba(201, 169, 97, 0.35);
  padding: 3px 10px;
  border-radius: 12px;
}

/* CARD VISUAL STAGE */
.symbol-card-visual {
  width: 140px;
  height: 140px;
  display: grid;
  place-items: center;
  margin: 10px 0 20px;
  position: relative;
}
.symbol-svg {
  width: 100%;
  height: 100%;
  filter: drop-shadow(0 8px 20px rgba(0, 0, 0, 0.8));
  overflow: visible;
}

/* CARD TYPOGRAPHY */
.symbol-card-title {
  font-size: 1.12rem;
  font-weight: 800;
  color: #f5f2ea;
  margin: 0 0 10px;
  line-height: 1.4;
}
.symbol-card-desc {
  font-size: 0.86rem;
  line-height: 1.65;
  color: #a89f91;
  margin: 0 0 18px;
  flex-grow: 1;
}
.symbol-card-link {
  font-size: 0.82rem;
  font-weight: 700;
  color: var(--gold-light);
  text-decoration: none;
  background: rgba(201, 169, 97, 0.08);
  border: 1px solid rgba(201, 169, 97, 0.3);
  padding: 6px 14px;
  border-radius: 16px;
  transition: all 0.25s ease;
  display: inline-block;
}
.symbol-card-link:hover {
  background: var(--gold);
  color: #111;
  box-shadow: 0 0 15px rgba(201, 169, 97, 0.4);
}

/* ==========================================================================
   CSS KEYFRAME ANIMATIONS FOR THE 8 MOVING SYMBOLS
   ========================================================================== */

/* 1. SCALE ANIMATIONS */
.sym-anim-scale-beam {
  transform-box: view-box;
  transform-origin: 100px 45px;
  animation: symScaleSway 4.5s ease-in-out infinite alternate;
}
@keyframes symScaleSway {
  0%   { transform: rotate(-5deg); }
  50%  { transform: rotate(0deg); }
  100% { transform: rotate(5deg); }
}
.sym-anim-pan-r {
  transform-box: view-box;
  transform-origin: 35px 45px;
  animation: symPanCounterR 4.5s ease-in-out infinite alternate;
}
@keyframes symPanCounterR {
  0%   { transform: rotate(5deg); }
  50%  { transform: rotate(0deg); }
  100% { transform: rotate(-5deg); }
}
.sym-anim-pan-l {
  transform-box: view-box;
  transform-origin: 165px 45px;
  animation: symPanCounterL 4.5s ease-in-out infinite alternate;
}
@keyframes symPanCounterL {
  0%   { transform: rotate(5deg); }
  50%  { transform: rotate(0deg); }
  100% { transform: rotate(-5deg); }
}

/* 2. GAVEL ANIMATIONS */
.sym-anim-gavel-arm {
  transform-box: view-box;
  transform-origin: 140px 165px;
  animation: symGavelStrike 2.8s cubic-bezier(0.25, 1, 0.5, 1) infinite;
}
@keyframes symGavelStrike {
  0%, 15% { transform: rotate(0deg); }
  32%     { transform: rotate(-42deg) translateY(-14px); }
  45%     { transform: rotate(4deg) translateY(4px); }
  52%     { transform: rotate(-8deg) translateY(-2px); }
  60%     { transform: rotate(0deg); }
  100%    { transform: rotate(0deg); }
}
.sym-shockwave {
  transform-box: view-box;
  transform-origin: 55px 14px;
  opacity: 0;
}
.sym-shockwave.sw-1 {
  animation: symShockwaveBoom 2.8s cubic-bezier(0.1, 0.8, 0.3, 1) infinite;
}
.sym-shockwave.sw-2 {
  animation: symShockwaveBoom 2.8s cubic-bezier(0.1, 0.8, 0.3, 1) infinite;
  animation-delay: 0.1s;
}
@keyframes symShockwaveBoom {
  0%, 43% { opacity: 0; transform: scale(0.3); }
  46%     { opacity: 0.9; transform: scale(0.8); }
  68%     { opacity: 0; transform: scale(1.6); }
  100%    { opacity: 0; transform: scale(1.6); }
}
.sym-anim-sparks {
  opacity: 0;
  animation: symSparksFlash 2.8s ease-out infinite;
}
@keyframes symSparksFlash {
  0%, 43% { opacity: 0; transform: scale(0.5); }
  46%     { opacity: 1; transform: scale(1.2); }
  54%     { opacity: 0; transform: scale(1.5); }
  100%    { opacity: 0; }
}

/* 3. ROBE ANIMATIONS */
.sym-anim-robe {
  animation: symRobeBillow 4s ease-in-out infinite alternate;
}
@keyframes symRobeBillow {
  0%   { transform: translate(20px, 20px) scale(1) rotate(0deg); }
  50%  { transform: translate(20px, 17px) scale(1.02) rotate(1deg); }
  100% { transform: translate(20px, 22px) scale(0.99) rotate(-1deg); }
}
.sym-anim-tassels {
  animation: symTasselFlutter 2.5s ease-in-out infinite alternate;
}
@keyframes symTasselFlutter {
  0%   { transform: rotate(-3deg); }
  100% { transform: rotate(4deg); }
}

/* 4. COURTHOUSE ANIMATIONS */
.sym-anim-rays {
  transform-box: view-box;
  transform-origin: 100px 95px;
  animation: symRaysSpin 35s linear infinite;
}
@keyframes symRaysSpin {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}
.sym-anim-court-building {
  animation: symCourtFloat 4.5s ease-in-out infinite alternate;
}
@keyframes symCourtFloat {
  0%   { transform: translate(25px, 30px); filter: drop-shadow(0 0 10px rgba(201,169,97,0.3)); }
  100% { transform: translate(25px, 26px); filter: drop-shadow(0 0 25px rgba(201,169,97,0.65)); }
}

/* 5. SWORD OF JUSTICE ANIMATIONS */
.sym-anim-sword {
  animation: symSwordHover 3.5s ease-in-out infinite alternate;
}
@keyframes symSwordHover {
  0%   { transform: translate(70px, 22px); }
  100% { transform: translate(70px, 15px); }
}
.sym-sword-gleam {
  animation: symGleamSweep 2.8s ease-in-out infinite;
}
@keyframes symGleamSweep {
  0%   { transform: translateY(30px); opacity: 0; }
  25%  { opacity: 0.9; }
  60%  { transform: translateY(-55px); opacity: 0.9; }
  85%, 100% { transform: translateY(-70px); opacity: 0; }
}

/* 6. LAW BOOK / CODEX ANIMATIONS */
.sym-anim-book {
  animation: symBookFloat 4s ease-in-out infinite alternate;
}
@keyframes symBookFloat {
  0%   { transform: translate(35px, 45px); }
  100% { transform: translate(35px, 40px); }
}
.sym-anim-turning-page {
  transform-box: view-box;
  transform-origin: 25px 60px;
  animation: symPageTurn 3.2s ease-in-out infinite alternate;
}
@keyframes symPageTurn {
  0%   { transform: scaleX(1) skewY(0deg); }
  50%  { transform: scaleX(0.7) skewY(-4deg); }
  100% { transform: scaleX(0.95) skewY(2deg); }
}

/* 7. OFFICIAL JUDICIAL SEAL ANIMATIONS */
.sym-anim-seal {
  transform-box: view-box;
  transform-origin: 0px 0px;
  animation: symSealTilt 6s ease-in-out infinite alternate;
}
@keyframes symSealTilt {
  0%   { transform: rotate(-8deg) scale(0.96); filter: drop-shadow(0 0 8px rgba(201,169,97,0.3)); }
  50%  { transform: rotate(0deg) scale(1.02); filter: drop-shadow(0 0 20px rgba(201,169,97,0.6)); }
  100% { transform: rotate(8deg) scale(0.98); filter: drop-shadow(0 0 12px rgba(201,169,97,0.4)); }
}

/* 8. MA'AT FEATHER OF TRUTH ANIMATIONS */
.sym-anim-feather {
  transform-box: view-box;
  transform-origin: 0px 70px;
  animation: symFeatherFloat 4s ease-in-out infinite alternate;
}
@keyframes symFeatherFloat {
  0%   { transform: translate(100px, 32px) rotate(-6deg); }
  50%  { transform: translate(100px, 24px) rotate(4deg); }
  100% { transform: translate(100px, 28px) rotate(-3deg); }
}

/* CTA BANNER BELOW SYMBOLS */
.ahl-symbols-cta-banner {
  background: linear-gradient(135deg, rgba(25, 21, 15, 0.95) 0%, rgba(15, 12, 8, 0.95) 100%);
  border: 1px solid rgba(201, 169, 97, 0.38);
  border-radius: 20px;
  padding: 30px 35px;
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.6);
}
.cta-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 25px;
}
@media (max-width: 900px) {
  .cta-inner {
    flex-direction: column;
    text-align: center;
  }
}
.cta-symbol-icon {
  font-size: 3rem;
  background: rgba(201, 169, 97, 0.12);
  width: 75px;
  height: 75px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  border: 1px solid rgba(201, 169, 97, 0.3);
  flex-shrink: 0;
}
.cta-text h3 {
  margin: 0 0 8px;
  font-size: 1.35rem;
  color: #f4f0e6;
  font-weight: 800;
}
.cta-text p {
  margin: 0;
  color: #bbb;
  font-size: 0.96rem;
  line-height: 1.6;
}
.cta-action {
  flex-shrink: 0;
}

/* FIX SVG TRANSFORM-BOX IN HERO SLIDER AS WELL */
.sv-tilt, .anim-gavel-arm, .anim-shockwave, .anim-court-rays, .anim-courthouse-building {
  transform-box: view-box !important;
}


/* ENSURE PROMINENT 2-COLUMN HERO SLIDER ON DESKTOP & TABLETS */
@media (min-width: 821px) {
  .ahl-slide-content {
    display: grid !important;
    grid-template-columns: 1.15fr 0.95fr !important;
    gap: 35px !important;
    align-items: center !important;
    min-height: 640px !important;
    padding: 100px 24px 60px !important;
  }
  .ahl-slide-visual {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
  }
  .ahl-scale-svg, .ahl-gavel-robe-svg, .ahl-courthouse-svg {
    max-height: 440px !important;
    width: 100% !important;
  }
}
@media (max-width: 820px) {
  .ahl-slide-content {
    grid-template-columns: 1fr !important;
    padding: 100px 20px 60px !important;
  }
  .ahl-scale-svg, .ahl-gavel-robe-svg, .ahl-courthouse-svg {
    max-height: 280px !important;
    width: auto !important;
    margin: 0 auto !important;
  }
}
