/* Corporate Lawyer KSA — Design System: "Executive Navy" */
:root{
  --navy:#0E2A47; --navy2:#16385C; --gold:#B08D3D; --gold-dark:#8A6B28; --gold-light:#D9BC7A;
  --ink:#1C2530; --muted:#5B6472; --line:#E4E7EC; --paper:#FFFFFF; --cream:#F5F3EE;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'Source Sans 3',Arial,sans-serif;background:var(--paper);color:var(--ink);line-height:1.65;min-height:100vh;}
h1,h2,h3,h4{font-family:'Playfair Display',Georgia,serif;font-weight:600;letter-spacing:-.01em;color:var(--navy);}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.wrap{max-width:1200px;margin:0 auto;padding:0 40px;}
ul{list-style:none;}

/* RTL adjustments */
html[dir="rtl"] body{font-family:'Tajawal','IBM Plex Sans Arabic',Arial,sans-serif;}
html[dir="rtl"] h1,html[dir="rtl"] h2,html[dir="rtl"] h3,html[dir="rtl"] h4{font-family:'Tajawal','IBM Plex Sans Arabic',Arial,sans-serif;font-weight:800;letter-spacing:0;}
html[dir="rtl"] .eyebrow::before{transform:scaleX(-1);}

/* header */
header.site-header{padding:20px 0;border-bottom:1px solid var(--line);position:relative;z-index:200;background:var(--paper);}
header.site-header .nav{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;}
.logo{font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:19px;white-space:nowrap;display:inline-flex;align-items:center;}
.logo img{height:38px;width:auto;display:block;}
.logo span{color:var(--gold);}
.main-nav ul{display:flex;gap:28px;font-size:13.5px;color:var(--ink);flex-wrap:wrap;}
.main-nav a:hover{color:var(--gold-dark);}
.main-nav li{position:relative;}
.main-nav > ul > li > a{display:flex;align-items:center;gap:5px;padding:8px 0;font-weight:500;}
.main-nav > ul > li > a::after{content:"";width:6px;height:6px;border-inline-end:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px;opacity:.55;transition:transform .2s;}
.main-nav > ul > li:hover > a::after,.main-nav > ul > li.mega-open > a::after{transform:rotate(225deg);margin-top:2px;}

.mega-panel{
  position:absolute;top:100%;inset-inline-start:50%;transform:translateX(-50%);
  margin-top:0;padding-top:20px;min-width:560px;max-width:720px;
  z-index:150;display:none;
}
.mega-panel-inner{
  background:var(--paper);
  border:1px solid var(--line);border-radius:10px;
  box-shadow:0 24px 50px rgba(14,42,71,.14);
  padding:26px;display:flex;gap:28px;
}
html[dir="rtl"] .mega-panel{transform:translateX(50%);}
.main-nav li.mega-open .mega-panel{display:block;}
.mega-col{flex:1;min-width:150px;}
.mega-col h5{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--gold-dark);margin-bottom:12px;font-weight:700;}
.mega-col ul{display:flex;flex-direction:column;gap:9px;font-size:13.5px;}
.mega-col a{color:var(--ink);}
.mega-col a:hover{color:var(--gold-dark);}
.mega-viewall{display:inline-block;margin-top:14px;font-size:12.5px;color:var(--gold-dark);font-weight:600;border-top:1px solid var(--line);padding-top:12px;width:100%;}
@media(max-width:900px){
  .mega-panel{position:static;transform:none;min-width:0;max-width:none;padding-top:10px;}
  .mega-panel-inner{border-radius:8px;flex-wrap:wrap;box-shadow:none;border-color:var(--line);}
  html[dir="rtl"] .mega-panel{transform:none;}
}

/* centered, evenly-spaced content paragraphs used across detail/hub/home pages */
.content-h2{font-size:22px;margin-bottom:14px;text-align:center;color:var(--navy);}
.content-h2-lg{font-size:24px;margin-bottom:18px;text-align:center;color:var(--navy);}
.content-p{color:var(--muted);max-width:760px;margin:18px 0;text-align:justify;}
.content-main .content-p{max-width:none;}
.content-p:first-of-type{margin-top:0;}

/* make in-body links clearly visible against the surrounding muted text */
.content-p a,.bullets a,.faq-item p a,.hub-overview a{color:var(--gold-dark);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;font-weight:600;}
.content-p a:hover,.bullets a:hover,.faq-item p a:hover,.hub-overview a:hover{color:var(--navy);}

/* bordered content box used to frame the long narrative sections */
.content-box{border:1px solid var(--line);border-radius:8px;background:#fff;padding:38px 42px;}
@media(max-width:560px){.content-box{padding:26px 22px;}}
.content-block{padding-top:34px;margin-top:34px;border-top:1px solid var(--line);}
.content-block:first-child{padding-top:0;margin-top:0;border-top:none;}

/* two-column layout: narrative content + sticky sidebar (services/help widget) */
.content-grid{display:grid;grid-template-columns:2fr 1fr;gap:32px;align-items:start;}
.side-widget{position:sticky;top:104px;}
.side-widget-inner{border:1px solid var(--line);border-radius:8px;background:var(--cream);padding:28px 26px;}
.side-widget-inner h4{font-family:'Playfair Display',Georgia,serif;color:var(--navy);font-size:17px;margin-bottom:10px;}
.side-widget-inner > p{color:var(--muted);font-size:13.5px;margin-bottom:20px;}
.side-widget-inner .btn,.side-widget-inner .btn-ghost{width:100%;text-align:center;box-sizing:border-box;}
.side-widget-inner .btn{margin-bottom:10px;}
.side-widget-inner .btn-ghost{border-color:var(--navy);color:var(--navy);}
.side-widget-inner .btn-ghost:hover{border-color:var(--gold);color:var(--gold-dark);background:rgba(176,141,61,.06);}
.side-widget-links{margin-top:22px;padding-top:20px;border-top:1px solid var(--line);}
.side-widget-links h5{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--gold-dark);margin-bottom:12px;font-weight:700;}
.side-widget-links ul{display:flex;flex-direction:column;gap:9px;font-size:13.5px;}
.side-widget-links a{color:var(--ink);}
.side-widget-links a:hover{color:var(--gold-dark);}
@media(max-width:900px){
  .content-grid{grid-template-columns:1fr;}
  .side-widget{position:static;top:auto;}
}
.lang-switch{font-size:12.5px;color:var(--muted);border:1px solid var(--line);border-radius:100px;padding:6px 12px;}
.lang-switch:hover{border-color:var(--gold);color:var(--gold-dark);}
.header-cta{display:flex;gap:10px;align-items:center;}
.btn{background:var(--gold);color:var(--navy);padding:12px 22px;border-radius:4px;font-weight:700;font-size:13.5px;display:inline-block;}
.btn:hover{background:var(--gold-dark);color:#fff;}
.btn-ghost{border:1.5px solid var(--navy);color:var(--navy);padding:10.5px 20px;border-radius:4px;font-size:13.5px;font-weight:600;display:inline-block;}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold-dark);background:rgba(176,141,61,.06);}
/* btn-ghost sits on the navy hero/CTA bands in several places — flip to a light outline there */
.hero-cta .btn-ghost,.cta-band .btn-ghost,.btn-row .btn-ghost{border-color:rgba(255,255,255,.55);color:#fff;}
.hero-cta .btn-ghost:hover,.cta-band .btn-ghost:hover,.btn-row .btn-ghost:hover{border-color:var(--gold-light);color:var(--gold-light);background:rgba(255,255,255,.06);}

/* breadcrumb (sits above the navy hero band, on the plain white page background) */
.breadcrumb{font-size:12.5px;color:var(--muted);padding:20px 0 0;}
.breadcrumb a:hover{color:var(--gold-dark);}
.breadcrumb .sep{margin:0 8px;opacity:.5;}

/* hero (interior pages) — full-bleed navy band behind constrained content, no markup changes required */
.page-hero{
  padding:44px 0 54px;
  background:var(--navy);
  box-shadow:0 0 0 100vmax var(--navy);
  clip-path:inset(0 -100vmax);
  position:relative;
}
.eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(176,141,61,.10);border:1px solid rgba(176,141,61,.35);color:var(--gold-dark);padding:7px 14px;border-radius:100px;font-size:12.5px;margin-bottom:20px;}
.eyebrow::before{content:"";width:16px;height:1px;background:var(--gold-dark);}
/* eyebrow appears inside the navy hero bands too — lighten it there for contrast */
.page-hero .eyebrow,.home-hero .eyebrow{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.28);color:var(--gold-light);}
.page-hero .eyebrow::before,.home-hero .eyebrow::before{background:var(--gold-light);}
.page-hero h1{font-size:38px;line-height:1.2;margin-bottom:18px;max-width:820px;color:#fff;}
.page-hero .lead{color:#C7D2E0;font-size:16px;max-width:680px;}

/* homepage hero */
.home-hero{
  padding:64px 0;display:grid;grid-template-columns:1fr .9fr;gap:50px;align-items:center;
  background:var(--navy);
  box-shadow:0 0 0 100vmax var(--navy);
  clip-path:inset(0 -100vmax);
  position:relative;
}
.home-hero h1{font-size:46px;line-height:1.18;font-weight:600;margin-bottom:22px;color:#fff;}
.home-hero p.lead{color:#C7D2E0;font-size:16.5px;max-width:460px;margin-bottom:30px;}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;}
.cta-microcopy{margin-top:14px;font-size:12.5px;color:#C7D2E0;display:flex;align-items:center;gap:6px;}
.cta-microcopy::before{content:"✓";color:var(--gold-light);font-weight:700;}

/* homepage hero image — replaces the old glassmorphism stack with a clean framed photo */
.glass-stack{position:relative;height:400px;border-radius:6px;overflow:hidden;border:1px solid rgba(255,255,255,.18);}
.glass-stack-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.glass-stack .bg-overlay{position:absolute;inset:0;background:linear-gradient(160deg,rgba(14,42,71,.35),rgba(14,42,71,.05));}
.glass-card{position:absolute;width:250px;padding:18px 20px;background:rgba(255,255,255,.97);border:1px solid rgba(255,255,255,.6);border-radius:6px;box-shadow:0 16px 40px rgba(14,42,71,.35);}
.glass-card h4{font-size:14px;margin-bottom:6px;color:var(--navy);font-family:'Playfair Display',Georgia,serif;}
.glass-card p{font-size:12.5px;color:var(--muted);}
.gc1{top:16px;left:16px;transform:rotate(-2deg);animation:float1 6s ease-in-out infinite;}
.gc2{top:150px;left:100px;transform:rotate(1.5deg);animation:float2 7s ease-in-out infinite;}
.gc3{top:284px;left:24px;transform:rotate(-1.5deg);animation:float1 8s ease-in-out infinite;}
@keyframes float1{50%{transform:translateY(-10px) rotate(-2deg);}}
@keyframes float2{50%{transform:translateY(-14px) rotate(1.5deg);}}

/* strip */
.strip{background:var(--cream);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin-top:0;}
.strip ul{display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;font-size:12.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600;}

/* generic sections */
.section{padding:80px 0;}
.section-head{max-width:640px;margin-bottom:44px;}
.section-head h2{font-size:30px;margin-bottom:12px;}
.section-head p{color:var(--muted);font-size:15px;}

.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
.card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:28px;transition:transform .25s,box-shadow .25s;box-shadow:0 1px 2px rgba(14,42,71,.03);}
.card:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(14,42,71,.10);border-color:rgba(176,141,61,.4);}
.card .icon{width:40px;height:40px;border-radius:6px;background:rgba(176,141,61,.12);margin-bottom:16px;display:flex;align-items:center;justify-content:center;color:var(--gold-dark);}
.card .icon svg{width:21px;height:21px;}
.card h3{font-size:16.5px;margin-bottom:8px;color:var(--navy);}
.card p{font-size:13.5px;color:var(--muted);}
.card .tag{font-size:11px;font-weight:700;color:var(--gold-dark);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px;display:block;}

.split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;}
.img-block{aspect-ratio:16/12;background:var(--cream);border:1px solid var(--line);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:12.5px;text-align:center;padding:20px;overflow:hidden;}
.img-block img{width:100%;height:100%;object-fit:cover;border-radius:8px;border:none;}

.faq{border-top:1px solid var(--line);}
.faq-item{border-bottom:1px solid var(--line);padding:20px 0;}
.faq-item h3{font-size:15.5px;margin-bottom:8px;color:var(--navy);}
.faq-item p{font-size:14px;color:var(--muted);text-align:justify;}

.bullets{display:grid;gap:10px;margin:20px 0;}
.bullets li{font-size:14.5px;color:var(--ink);padding-inline-start:20px;position:relative;}
.bullets li::before{content:"—";position:absolute;inset-inline-start:0;color:var(--gold-dark);}

.cta-band{background:var(--navy);border-radius:8px;padding:56px 50px;text-align:center;margin:0 0 30px;}
.cta-band h2{font-size:26px;margin-bottom:12px;color:#fff;}
.cta-band p{color:#C7D2E0;margin-bottom:22px;}
.cta-band .btn-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
.cta-band .btn{background:var(--gold);color:var(--navy);}
.cta-band .btn:hover{background:var(--gold-light);}

.related{display:flex;flex-wrap:wrap;gap:12px;}
.pill{border:1px solid var(--line);border-radius:100px;padding:9px 18px;font-size:13px;color:var(--muted);}
.pill:hover{border-color:var(--gold);color:var(--gold-dark);}

footer.site-footer{border-top:1px solid var(--line);padding:50px 0 30px;font-size:13px;color:var(--muted);background:var(--paper);}
footer.site-footer .fgrid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:30px;margin-bottom:30px;}
footer.site-footer h4{color:var(--navy);font-size:13.5px;margin-bottom:12px;}
footer.site-footer li{margin-bottom:8px;}
footer.site-footer li a:hover{color:var(--gold-dark);}
.foot-bottom{border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;}

.social-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding:26px 0;margin-top:6px;border-top:1px solid var(--line);}
.social-label{font-size:12.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600;}
.social-links{display:flex;gap:12px;}
.social-icon{
  width:42px;height:42px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:#fff;border:1px solid var(--line);
  color:var(--navy);transition:transform .25s ease,background .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.social-icon svg{width:19px;height:19px;}
.social-icon:hover{
  background:var(--gold);color:var(--navy);border-color:var(--gold);
  transform:translateY(-3px);box-shadow:0 8px 20px rgba(176,141,61,.35);
}

.whatsapp-fab{position:fixed;bottom:22px;inset-inline-end:22px;background:var(--gold);color:var(--navy);width:60px;height:60px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:700;font-size:10.5px;line-height:1.15;box-shadow:0 10px 26px rgba(14,42,71,.35);z-index:60;gap:2px;transition:transform .2s,background .2s;}
.whatsapp-fab:hover{transform:scale(1.06);background:var(--gold-dark);color:#fff;}
.whatsapp-fab svg{width:22px;height:22px;}

.mobile-cta-bar{display:none;}

@media(max-width:760px){
  .whatsapp-fab{display:none;}
  .mobile-cta-bar{
    display:flex;position:fixed;left:0;right:0;bottom:0;z-index:70;
    background:rgba(255,255,255,.97);backdrop-filter:blur(10px);
    border-top:1px solid var(--line);
    padding:10px 12px calc(10px + env(safe-area-inset-bottom));
    gap:10px;box-shadow:0 -8px 24px rgba(14,42,71,.12);
  }
  .mobile-cta-bar a{
    flex:1;display:flex;align-items:center;justify-content:center;gap:7px;
    padding:13px 10px;border-radius:6px;font-size:14px;font-weight:700;
    text-align:center;white-space:nowrap;
  }
  .mobile-cta-bar .mcta-whatsapp{background:var(--gold);color:var(--navy);}
  .mobile-cta-bar .mcta-book{background:var(--navy);color:#fff;border:1px solid var(--navy);}
  .mobile-cta-bar svg{width:18px;height:18px;flex-shrink:0;}
  /* keep page content clear of the fixed bar */
  body{padding-bottom:74px;}
  footer.site-footer{padding-bottom:8px;}
}

.reveal{opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s ease;}
.reveal.in{opacity:1;transform:none;}

@media(max-width:860px){
  .home-hero,.split{grid-template-columns:1fr;}
  .grid3{grid-template-columns:1fr 1fr;}
  footer.site-footer .fgrid{grid-template-columns:1fr 1fr;}
}
@media(max-width:560px){
  .grid3,.grid2,footer.site-footer .fgrid{grid-template-columns:1fr;}
  .wrap{padding:0 20px;}
  .home-hero h1{font-size:32px;}
  .page-hero h1{font-size:27px;}
  .glass-stack{height:320px;}
  .glass-card{width:210px;padding:14px 16px;}
}

/* Table of contents (Article pages only) */
.toc-box{border:1px solid var(--line);border-radius:8px;background:var(--cream);padding:24px 28px;margin:0 0 12px;}
.toc-title{font-size:16px;margin:0 0 12px;color:var(--navy);}
.toc-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 24px;}
.toc-list li{border-inline-start:2px solid var(--gold);padding-inline-start:10px;}
.toc-list a{color:var(--navy2);text-decoration:none;font-size:14.5px;}
.toc-list a:hover{color:var(--gold-dark);text-decoration:underline;}
@media (max-width:700px){.toc-list{grid-template-columns:1fr;}}
