/*
Theme Name: Syrian Business Law
Theme URI: https://syrianlaw.net/
Author: Syrian Business Law
Description: A multilingual Arabic-first WordPress theme for Syrian business law and company formation services.
Version: 1.2.0
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: syrian-business-law
*/

:root {
  --sbl-ink: #10231d;
  --sbl-green: #063b2d;
  --sbl-green-2: #0d5945;
  --sbl-gold: #c7a24b;
  --sbl-gold-soft: #e5d29a;
  --sbl-cream: #f7f2e8;
  --sbl-paper: #fffdf8;
  --sbl-muted: #647069;
  --sbl-line: rgba(16, 35, 29, 0.13);
  --sbl-shadow: 0 22px 60px rgba(12, 38, 30, 0.12);
  --sbl-radius: 24px;
  --sbl-width: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--sbl-ink);
  background: var(--sbl-paper);
  font-family: Inter, "Segoe UI", Tahoma, Arial, sans-serif;
  font-size: 17px;
  line-height: 1.75;
  -webkit-font-smoothing: antialiased;
}
body[dir="rtl"] { font-family: Tahoma, Arial, sans-serif; }
a { color: inherit; }
img { display: block; max-width: 100%; }
.sbl-wrap { width: min(calc(100% - 40px), var(--sbl-width)); margin-inline: auto; }
.sbl-skip-link { position: fixed; inset-block-start: -80px; inset-inline-start: 20px; z-index: 999; padding: 10px 16px; background: #fff; }
.sbl-skip-link:focus { inset-block-start: 16px; }

.sbl-topline {
  background: var(--sbl-green);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .18em;
  text-align: center;
  text-transform: uppercase;
}
.sbl-topline .sbl-wrap { padding: 7px 0; }
.sbl-header {
  position: sticky;
  inset-block-start: 0;
  z-index: 50;
  background: rgba(255, 253, 248, .94);
  border-bottom: 1px solid var(--sbl-line);
  backdrop-filter: blur(15px);
}
.sbl-header-row { min-height: 84px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.sbl-brand { display: flex; align-items: center; gap: 12px; text-decoration: none; }
.sbl-brand img { width: 64px; height: 64px; object-fit: contain; }
.sbl-brand-text { display: grid; line-height: 1.2; }
.sbl-brand-text strong { font-family: Georgia, "Times New Roman", serif; font-size: 21px; letter-spacing: .01em; }
.sbl-brand-text span { color: var(--sbl-muted); font-size: 11px; letter-spacing: .13em; text-transform: uppercase; }
.sbl-nav { display: flex; align-items: center; gap: 28px; }
.sbl-nav a { font-size: 14px; font-weight: 750; text-decoration: none; }
.sbl-nav a:hover { color: var(--sbl-green-2); }
.sbl-languages { display: flex; align-items: center; gap: 5px; padding: 4px; border: 1px solid var(--sbl-line); border-radius: 999px; }
.sbl-languages a { min-width: 38px; padding: 5px 9px; border-radius: 999px; font-size: 12px; font-weight: 800; text-align: center; text-decoration: none; }
.sbl-languages a[aria-current="page"] { color: #fff; background: var(--sbl-green); }
.sbl-menu-toggle { display: none; border: 0; background: transparent; font: inherit; font-weight: 800; }

.sbl-hero {
  position: relative;
  overflow: hidden;
  min-height: 690px;
  display: grid;
  align-items: center;
  background:
    radial-gradient(circle at 80% 30%, rgba(199,162,75,.22), transparent 28%),
    linear-gradient(135deg, var(--sbl-paper) 0 62%, var(--sbl-cream) 62% 100%);
}
.sbl-hero::after { content: ""; position: absolute; width: 470px; height: 470px; inset-inline-end: -180px; inset-block-end: -230px; border: 1px solid rgba(199,162,75,.44); border-radius: 50%; }
.sbl-hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: 1.15fr .85fr; align-items: center; gap: 70px; padding: 80px 0; }
.sbl-kicker { margin: 0 0 16px; color: var(--sbl-green-2); font-size: 13px; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.sbl-hero h1 { max-width: 820px; margin: 0; font-family: Georgia, "Times New Roman", serif; font-size: clamp(46px, 6vw, 80px); font-weight: 500; letter-spacing: -.045em; line-height: 1.04; }
body[dir="rtl"] .sbl-hero h1 { font-family: Tahoma, Arial, sans-serif; font-weight: 800; letter-spacing: -.02em; }
.sbl-hero-copy { max-width: 690px; margin: 26px 0 0; color: #405049; font-size: clamp(18px, 2vw, 22px); }
.sbl-actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 34px; }
.sbl-button { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 11px 23px; border: 1px solid var(--sbl-green); border-radius: 999px; font-size: 14px; font-weight: 850; text-decoration: none; transition: transform .2s ease, background .2s ease; }
.sbl-button:hover { transform: translateY(-2px); }
.sbl-button--primary { color: #fff; background: var(--sbl-green); }
.sbl-button--ghost { background: rgba(255,255,255,.65); }
.sbl-button--whatsapp { color: #fff; border-color: #187d42; background: #187d42; }
.sbl-hero-mark { position: relative; min-height: 460px; display: grid; place-items: center; }
.sbl-hero-mark::before { content: ""; position: absolute; width: 370px; height: 370px; border: 1px solid rgba(199,162,75,.65); border-radius: 50%; background: rgba(255,255,255,.55); box-shadow: var(--sbl-shadow); }
.sbl-hero-mark img { position: relative; z-index: 1; width: min(400px, 90%); filter: drop-shadow(0 18px 25px rgba(6,59,45,.16)); }
.sbl-trust-row { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--sbl-line); border-radius: var(--sbl-radius); background: rgba(255,255,255,.77); box-shadow: var(--sbl-shadow); }
.sbl-trust-row div { padding: 22px 24px; }
.sbl-trust-row div + div { border-inline-start: 1px solid var(--sbl-line); }
.sbl-trust-row strong, .sbl-trust-row span { display: block; }
.sbl-trust-row strong { color: var(--sbl-green); font-size: 15px; }
.sbl-trust-row span { color: var(--sbl-muted); font-size: 13px; }

.sbl-section { padding: 110px 0; }
.sbl-section--cream { background: var(--sbl-cream); }
.sbl-section--dark { color: #fff; background: var(--sbl-green); }
.sbl-heading { max-width: 760px; margin-bottom: 46px; }
.sbl-heading h2 { margin: 0 0 15px; font-family: Georgia, "Times New Roman", serif; font-size: clamp(36px, 4vw, 54px); font-weight: 500; line-height: 1.12; letter-spacing: -.035em; }
body[dir="rtl"] .sbl-heading h2 { font-family: Tahoma, Arial, sans-serif; font-weight: 800; letter-spacing: -.015em; }
.sbl-heading p { margin: 0; color: var(--sbl-muted); font-size: 18px; }
.sbl-section--dark .sbl-heading p { color: rgba(255,255,255,.7); }
.sbl-service-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.sbl-card { min-height: 265px; padding: 30px; border: 1px solid var(--sbl-line); border-radius: var(--sbl-radius); background: var(--sbl-paper); transition: transform .2s ease, box-shadow .2s ease; }
.sbl-card:hover { transform: translateY(-4px); box-shadow: var(--sbl-shadow); }
.sbl-card-number { color: var(--sbl-gold); font-family: Georgia, serif; font-size: 18px; }
.sbl-card h3 { margin: 44px 0 10px; font-family: Georgia, "Times New Roman", serif; font-size: 25px; line-height: 1.2; }
body[dir="rtl"] .sbl-card h3 { font-family: Tahoma, Arial, sans-serif; }
.sbl-card p { margin: 0; color: var(--sbl-muted); font-size: 15px; }
.sbl-process { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; overflow: hidden; border: 1px solid rgba(255,255,255,.16); border-radius: var(--sbl-radius); background: rgba(255,255,255,.16); }
.sbl-step { min-height: 250px; padding: 30px; background: var(--sbl-green); }
.sbl-step span { color: var(--sbl-gold-soft); font-weight: 900; }
.sbl-step h3 { margin: 55px 0 10px; font-size: 20px; }
.sbl-step p { margin: 0; color: rgba(255,255,255,.68); font-size: 14px; }
.sbl-about-grid { display: grid; grid-template-columns: .85fr 1.15fr; align-items: start; gap: 80px; }
.sbl-about-seal { padding: 45px; border: 1px solid var(--sbl-line); border-radius: var(--sbl-radius); background: var(--sbl-cream); text-align: center; }
.sbl-about-seal img { width: 240px; margin: 0 auto 26px; }
.sbl-about-seal strong { display: block; font-family: Georgia, serif; font-size: 25px; }
.sbl-about-copy p { color: var(--sbl-muted); font-size: 18px; }
.sbl-about-list { display: grid; gap: 14px; margin-top: 28px; }
.sbl-about-list div { position: relative; padding-inline-start: 28px; font-weight: 750; }
.sbl-about-list div::before { content: ""; position: absolute; inset-inline-start: 0; inset-block-start: .75em; width: 11px; height: 2px; background: var(--sbl-gold); }

.sbl-faq-list { display: grid; gap: 14px; max-width: 900px; }
.sbl-faq-item { border: 1px solid var(--sbl-line); border-radius: 18px; background: #fff; }
.sbl-faq-item summary { position: relative; padding: 22px 58px 22px 24px; font-size: 18px; font-weight: 850; cursor: pointer; list-style: none; }
body[dir="rtl"] .sbl-faq-item summary { padding: 22px 24px 22px 58px; }
.sbl-faq-item summary::-webkit-details-marker { display: none; }
.sbl-faq-item summary::after { content: "+"; position: absolute; inset-inline-end: 24px; color: var(--sbl-gold); font-size: 25px; line-height: 1; }
.sbl-faq-item[open] summary::after { content: "−"; }
.sbl-faq-item p { margin: 0; padding: 0 24px 24px; color: var(--sbl-muted); }

.sbl-contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; }
.sbl-contact-grid h2 { margin: 0 0 16px; font-family: Georgia, serif; font-size: clamp(38px, 4vw, 56px); font-weight: 500; line-height: 1.1; }
body[dir="rtl"] .sbl-contact-grid h2 { font-family: Tahoma, Arial, sans-serif; font-weight: 800; }
.sbl-contact-grid > div > p { color: rgba(255,255,255,.7); }
.sbl-contact-card { padding: 34px; border: 1px solid rgba(255,255,255,.17); border-radius: var(--sbl-radius); background: rgba(255,255,255,.07); }
.sbl-contact-item { display: grid; grid-template-columns: 95px 1fr; gap: 16px; padding: 15px 0; border-bottom: 1px solid rgba(255,255,255,.13); }
.sbl-contact-item:last-child { border-bottom: 0; }
.sbl-contact-item span { color: var(--sbl-gold-soft); font-size: 12px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.sbl-contact-item a { color: #fff; text-decoration: none; overflow-wrap: anywhere; }
.sbl-footer { color: rgba(255,255,255,.65); background: #041f18; }
.sbl-partners { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 12px 22px; padding: 28px 0 0; }
.sbl-partners span { color: var(--sbl-gold-soft); font-size: 11px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.sbl-partners a { color: #fff; font-size: 14px; font-weight: 800; text-decoration: none; }
.sbl-partners a:hover { color: var(--sbl-gold-soft); }
.sbl-footer-row { display: flex; justify-content: space-between; gap: 30px; padding: 28px 0; font-size: 12px; }
.sbl-footer a { color: inherit; }
.sbl-whatsapp-float { position: fixed; z-index: 80; inset-inline-end: 22px; inset-block-end: 22px; display: inline-flex; align-items: center; gap: 10px; min-height: 52px; padding: 8px 18px 8px 9px; border-radius: 999px; color: #fff; background: #187d42; box-shadow: 0 14px 38px rgba(0,0,0,.25); font-size: 13px; font-weight: 900; text-decoration: none; }
body[dir="rtl"] .sbl-whatsapp-float { padding: 8px 9px 8px 18px; }
.sbl-whatsapp-float span { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; color: #187d42; background: #fff; font-size: 11px; letter-spacing: -.04em; }
.sbl-whatsapp-float:hover { background: #116b37; transform: translateY(-2px); }

@media (max-width: 980px) {
  .sbl-menu-toggle { display: inline-flex; }
  .sbl-nav { display: none; position: absolute; inset-inline: 20px; inset-block-start: 95px; flex-direction: column; align-items: stretch; gap: 8px; padding: 20px; border: 1px solid var(--sbl-line); border-radius: 18px; background: var(--sbl-paper); box-shadow: var(--sbl-shadow); }
  .sbl-nav.is-open { display: flex; }
  .sbl-languages { align-self: flex-start; margin-top: 8px; }
  .sbl-hero-grid, .sbl-about-grid, .sbl-contact-grid { grid-template-columns: 1fr; }
  .sbl-hero-mark { min-height: 360px; }
  .sbl-service-grid { grid-template-columns: repeat(2, 1fr); }
  .sbl-process { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 640px) {
  .sbl-wrap { width: min(calc(100% - 28px), var(--sbl-width)); }
  .sbl-header-row { min-height: 72px; }
  .sbl-brand img { width: 50px; height: 50px; }
  .sbl-brand-text strong { font-size: 16px; }
  .sbl-brand-text span { display: none; }
  .sbl-hero { min-height: auto; }
  .sbl-hero-grid { gap: 20px; padding: 60px 0; }
  .sbl-hero h1 { font-size: 43px; }
  .sbl-hero-mark { min-height: 290px; }
  .sbl-hero-mark::before { width: 270px; height: 270px; }
  .sbl-trust-row { grid-template-columns: 1fr; }
  .sbl-trust-row div + div { border-inline-start: 0; border-top: 1px solid var(--sbl-line); }
  .sbl-section { padding: 78px 0; }
  .sbl-service-grid, .sbl-process { grid-template-columns: 1fr; }
  .sbl-card { min-height: 235px; }
  .sbl-step { min-height: 210px; }
  .sbl-footer-row { flex-direction: column; }
	.sbl-whatsapp-float { width: 54px; height: 54px; min-height: 54px; padding: 9px; overflow: hidden; white-space: nowrap; }
	.sbl-whatsapp-float span { flex: 0 0 36px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition: none !important; }
}
