/*
Theme Name: Dawood Al-Jahdhami Law Firm
Theme URI: https://dawood-lawyer.com
Author: Dynamic For Development and Trading SPC
Author URI: https://dynamicgroup.om/portfolio
Description: Lightweight custom theme reproducing the approved static design. All site content is edited from "Site Content" in the dashboard; Legal Insights uses WordPress posts.
Version: 1.3.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: dawood
*/

/* ===== Design styles (copied 1:1 from the approved static site) ===== */
*{box-sizing:border-box}body{margin:0;background:#f5f2ec;color:#162f32;font-family:Arial,sans-serif;line-height:1.7}a{color:inherit}header{padding:25px 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d5d4c9;gap:25px}.brand{text-decoration:none;font-family:Georgia,serif;font-size:24px;line-height:1.15}.brand small{display:block;font:10px Arial;letter-spacing:3px;margin-top:10px}nav{display:flex;gap:24px;flex-wrap:wrap}nav a{font-size:13px;text-decoration:none}nav a[aria-current]{border-bottom:2px solid #ac7648}main{min-height:70vh}.hero{padding:85px 8%;background:#163d3f;color:#fff;position:relative;overflow:hidden}.hero:after{content:'';position:absolute;width:300px;height:400px;border:1px solid #9b8960;border-radius:180px 180px 0 0;right:6%;top:50px;opacity:.3;pointer-events:none}.hero>*{position:relative;z-index:1}.eyebrow{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:#bd976d}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.15}h1{font-size:clamp(42px,5.2vw,74px);max-width:850px;margin:20px 0 28px}h2{font-size:38px}h3{font-size:25px}p{max-width:760px}.lead{font-size:18px;max-width:670px;color:#e4e8df}.button{display:inline-block;text-decoration:none;background:#ba895b;color:#112f31;padding:13px 24px;margin:15px 10px 0 0;font-size:13px;font-weight:bold}.button.light{background:transparent;color:white;border:1px solid #6f9695}.section{padding:65px 8%}.split{display:grid;grid-template-columns:1fr 1.5fr;gap:70px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.item{border-top:1px solid #bda17f;padding:22px 0}.number{font-size:12px;color:#987245}.band{background:#e8e5db}.statement{font:32px/1.4 Georgia;max-width:950px}.chips{display:flex;flex-wrap:wrap;gap:12px}.chips span{border:1px solid #bcc5bc;padding:10px 18px;font-size:13px}footer{background:#102d30;color:#cfd8d2;padding:40px 8%;font-size:12px}.foot{display:flex;justify-content:space-between;gap:30px}details{border-bottom:1px solid #c6cec5;padding:20px 0}summary{cursor:pointer;font-weight:bold}textarea,input,select{width:100%;padding:12px;border:1px solid #b7c4ba;background:#fff;font:15px Arial;margin:7px 0 17px}label{font-size:13px}button{border:0;cursor:pointer}form{max-width:700px}.notice{font-size:13px;color:#526761}#result{white-space:pre-wrap;background:#e8e5db;padding:20px;display:none}@media(max-width:800px){header,.foot{display:block}nav{margin-top:25px;gap:15px}.hero{padding:60px 7%}.section{padding:45px 7%}.split,.grid{grid-template-columns:1fr;gap:22px}.hero:after{right:-150px}h2{font-size:32px}}
.founder-photo{margin:0 0 32px;max-width:390px}.founder-photo img{display:block;width:100%;height:auto;border-radius:160px 160px 3px 3px}.founder-photo figcaption{font-size:12px;margin-top:12px;color:#526761}

html[lang="zh-Hans"] body{font-family:"Noto Sans SC","Microsoft YaHei","PingFang SC",sans-serif}html[lang="zh-Hans"] h1,html[lang="zh-Hans"] h2,html[lang="zh-Hans"] h3{font-family:inherit;line-height:1.4}html[lang="zh-Hans"] h1{font-size:clamp(36px,5vw,64px)}

.office-sign{margin:25px 0 0;max-width:1050px}.office-sign img{display:block;width:100%;height:auto}.office-sign figcaption{font-size:12px;color:#526761;margin-top:10px}

.founder-hero{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.4fr);gap:55px;align-items:center;padding:42px 7%}.founder-hero:after{display:none}.hero-portrait{max-width:340px;margin:auto;width:100%}.hero-portrait img{display:block;width:100%;height:auto;border-radius:150px 150px 4px 4px;border:1px solid #8b7855}.founder-hero h1{font-size:clamp(35px,4.2vw,60px);margin:14px 0}.founder-hero h1 span{color:#cfa579}.hero-arabic{font-size:23px;text-align:left;margin:10px 0}.hero-tagline{font:22px Georgia,serif;color:#cfa579}.founder-hero .lead{font-size:16px}@media(max-width:800px){header{padding:16px 5%}nav{margin-top:15px;gap:10px}.founder-hero{grid-template-columns:1fr;gap:20px;padding:24px 6%}.hero-portrait{max-width:190px}.hero-portrait img{height:220px;object-fit:cover;object-position:center 24%;border-radius:90px 90px 4px 4px}.hero-copy{text-align:center}.hero-arabic{text-align:center;font-size:20px}.founder-hero h1{font-size:34px}.hero-tagline{font-size:19px}.founder-hero .eyebrow{font-size:10px}}

.article-body{max-width:920px;margin:auto}.article-body>p:not(.notice){font-size:18px;line-height:1.9;margin:28px 0}.item h3 a{text-decoration:none}.item h3 a:hover{text-decoration:underline}

/* Motion: background + reveal */
.hero{background:linear-gradient(120deg,#163d3f 0%,#1b4a4c 45%,#143638 100%);background-size:220% 220%;animation:heroShift 18s ease-in-out infinite}
.hero:before{content:'';position:absolute;inset:-30%;background:radial-gradient(circle at 30% 40%,rgba(207,165,121,.16),transparent 38%),radial-gradient(circle at 75% 70%,rgba(111,150,149,.18),transparent 42%);animation:heroGlow 22s ease-in-out infinite alternate;pointer-events:none;z-index:0}
.hero:after{animation:archFloat 9s ease-in-out infinite}
.band{background:linear-gradient(110deg,#e8e5db 0%,#efece3 50%,#e8e5db 100%);background-size:250% 100%;animation:bandShift 24s ease-in-out infinite}
@keyframes heroShift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes heroGlow{0%{transform:translate(0,0) scale(1)}100%{transform:translate(6%,-4%) scale(1.12)}}
@keyframes archFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@keyframes bandShift{0%,100%{background-position:0% 0}50%{background-position:100% 0}}
.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
.js .reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.hero,.hero:before,.hero:after,.band{animation:none}.js .reveal{opacity:1;transform:none;transition:none}}
/* Quick contact buttons */
.contact-fab{position:fixed;right:20px;bottom:20px;display:flex;flex-direction:column;gap:12px;z-index:50}
.contact-fab a{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#163d3f;border:1px solid #ba895b;box-shadow:0 6px 18px rgba(16,45,48,.28);transition:transform .25s ease,background .25s ease}
.contact-fab a:hover,.contact-fab a:focus-visible{transform:translateY(-3px);background:#1d4c4e}
.contact-fab svg{width:24px;height:24px;fill:#cfa579}
.contact-fab .fab-wa{animation:fabPulse 3.2s ease-in-out infinite}
@keyframes fabPulse{0%,100%{box-shadow:0 6px 18px rgba(16,45,48,.28),0 0 0 0 rgba(186,137,91,.45)}50%{box-shadow:0 6px 18px rgba(16,45,48,.28),0 0 0 10px rgba(186,137,91,0)}}

/* Footer ornament + credit */
footer{position:relative;border-top:2px solid #ba895b;background:linear-gradient(180deg,#123234 0%,#102d30 60%)}
.foot-ornament{display:flex;align-items:center;gap:18px;color:#9b8960;margin:-4px 0 28px}
.foot-ornament span{flex:1;height:1px;background:linear-gradient(90deg,transparent,#9b8960 30%,#9b8960 70%,transparent)}
.foot-ornament svg{width:30px;height:36px}
.credit{margin:26px 0 0;padding-top:18px;border-top:1px solid rgba(155,137,96,.35);max-width:none;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:#8fa39d}
.credit strong{font-weight:400;color:#cfa579}
@media(max-width:800px){.contact-fab{right:14px;bottom:14px}.contact-fab a{width:48px;height:48px}footer{padding-bottom:90px}}
@media(prefers-reduced-motion:reduce){.contact-fab .fab-wa{animation:none}}
/* Header: formal gold accent */
header{position:relative;background:#f5f2ec}
header:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent 0%,#ba895b 50%,transparent 100%);background-size:40% 100%;background-repeat:no-repeat;animation:headSweep 7s ease-in-out infinite}
@keyframes headSweep{0%{background-position:-40% 0}100%{background-position:140% 0}}
.brand{animation:headIn .9s ease both}
.brand small{position:relative;width:max-content;padding-bottom:2px}
.brand small:after{content:'';position:absolute;left:0;bottom:-4px;height:1px;width:100%;background:#ba895b;transform-origin:left;animation:lineDraw 1.2s .4s ease both}
nav{animation:headIn .9s .15s ease both}
nav a{position:relative;transition:color .25s ease}
nav a:after{content:'';position:absolute;left:0;right:0;bottom:-3px;height:1px;background:#ba895b;transform:scaleX(0);transform-origin:center;transition:transform .3s ease}
nav a:hover{color:#ac7648}nav a:hover:after{transform:scaleX(1)}
nav a[aria-current]:after{display:none}
@keyframes headIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@keyframes lineDraw{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(prefers-reduced-motion:reduce){header:after,.brand,nav,.brand small:after{animation:none}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Page transition veil: firm-branded curtain between pages (only after an in-site click, never on first visit) */
.page-veil{--veil-dur:700ms;position:fixed;inset:0;z-index:200;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--veil-bg,#163d3f);color:var(--veil-accent,#cfa579);opacity:0;visibility:hidden;pointer-events:none;transition:opacity calc(var(--veil-dur) * .5) ease,visibility 0s linear calc(var(--veil-dur) * .5)}
.page-veil:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,rgba(207,165,121,.14),transparent 45%);pointer-events:none}
.page-veil.on,.veil-in .page-veil{opacity:1;visibility:visible;pointer-events:auto;transition:opacity calc(var(--veil-dur) * .5) ease}
.veil-in .page-veil{transition:none}
.veil-arch{position:relative;width:46px;height:56px;fill:none;stroke:currentColor;stroke-width:1.2}
.veil-arch path{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset calc(var(--veil-dur) * .7) cubic-bezier(.6,0,.2,1)}
.veil-arch path+path{opacity:.55;transition-delay:calc(var(--veil-dur) * .1)}
.veil-name{position:relative;margin-top:18px;font:400 26px/1.2 Georgia,serif;color:#fff;letter-spacing:.5px}
.veil-sub{position:relative;margin-top:8px;font:10px Arial,sans-serif;letter-spacing:4px;text-transform:uppercase}
.veil-line{position:relative;display:block;width:120px;height:1px;margin-top:14px;background:currentColor;transform:scaleX(0);transition:transform calc(var(--veil-dur) * .6) ease calc(var(--veil-dur) * .15)}
.veil-name,.veil-sub{opacity:0;transform:translateY(6px);transition:opacity calc(var(--veil-dur) * .4) ease calc(var(--veil-dur) * .15),transform calc(var(--veil-dur) * .4) ease calc(var(--veil-dur) * .15)}
.page-veil.on .veil-arch path,.veil-in .veil-arch path{stroke-dashoffset:0}
.page-veil.on .veil-line,.veil-in .veil-line{transform:scaleX(1)}
.page-veil.on .veil-name,.page-veil.on .veil-sub,.veil-in .veil-name,.veil-in .veil-sub{opacity:1;transform:none}
.veil-in .page-veil *{transition:none}
@media(max-width:800px){.veil-name{font-size:21px}}
@media(prefers-reduced-motion:reduce){.page-veil{display:none}}

/* Copyright line (EN / AR / ZH) above the developer credit */
.copyright{margin:26px 0 0;padding-top:18px;border-top:1px solid rgba(155,137,96,.35);max-width:none;font-size:11.5px;color:#a9b8b2;line-height:1.9}
.copyright .sep{color:#9b8960;margin:0 6px}
.copyright+.credit{margin-top:6px;padding-top:0;border-top:0}

/* Office map (Google Maps), contact + Chinese pages */
.office-map{margin-top:26px}
.map-frame{position:relative;overflow:hidden;border-top:3px solid #ba895b;border-radius:3px;background:#dfe3dc;box-shadow:0 10px 30px rgba(16,45,48,.12)}
.map-frame iframe{display:block;width:100%;height:420px;border:0;filter:grayscale(.35) contrast(1.05);transition:filter .5s ease}
.map-frame:hover iframe{filter:none}
.office-map .button{margin-top:18px}
@media(max-width:800px){.map-frame iframe{height:320px}}
