:root{
  --ink:#30372A;--forest:#596348;--green:#687356;--green2:#7D8769;--sage:#A5AD8A;--mint:#E7E4D7;
  --paper:#F4F1E8;--cream:#DDD7C3;--white:#FFFDFC;--text:#394034;--muted:#6F746A;--line:rgba(74,84,61,.16);
  --sand:#DDD7C3;--sand2:#EEEADF;--olive:#596348;--olive2:#737D60;--olive3:#98A07F;
  --shadow:0 30px 80px rgba(48,55,42,.12);--shadow2:0 18px 45px rgba(48,55,42,.09);--radius:28px;
  --header-h:78px;--jump-h:62px;--max:1280px;
}
body.dah-tp-site *{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + var(--jump-h) + 20px)}
body.dah-tp-site{margin:0;background:var(--paper);color:var(--text);font-family:"Almarai",sans-serif;line-height:1.75;overflow-x:hidden}
body.dah-tp-site.no-scroll{overflow:hidden}
body.dah-tp-site a{text-decoration:none;color:inherit}
body.dah-tp-site button, body.dah-tp-site input, body.dah-tp-site select, body.dah-tp-site textarea{font:inherit}
body.dah-tp-site button{color:inherit}
body.dah-tp-site img{display:block;width:100%;height:100%;object-fit:cover}
body.dah-tp-site svg{display:block}
body.dah-tp-site .wrap{width:min(var(--max),calc(100% - 56px));margin-inline:auto}
body.dah-tp-site .section{padding:104px 0;position:relative}
body.dah-tp-site .section-sm{padding:68px 0}
body.dah-tp-site .kicker{display:inline-flex;align-items:center;gap:11px;font-size:15px;font-weight:800;color:var(--green);margin-bottom:14px}
body.dah-tp-site .kicker:before{content:"";width:26px;height:2px;background:var(--sage);border-radius:4px}
body.dah-tp-site h1, body.dah-tp-site h2, body.dah-tp-site h3, body.dah-tp-site h4{font-family:"El Messiri",sans-serif;margin:0;color:var(--ink);line-height:1.2}
body.dah-tp-site h1{font-size:clamp(48px,5.25vw,74px);font-weight:700;letter-spacing:-.02em}
body.dah-tp-site h2{font-size:clamp(34px,3.5vw,48px);font-weight:700;letter-spacing:-.015em}
body.dah-tp-site h3{font-size:26px;font-weight:700}
body.dah-tp-site h4{font-size:19px;font-weight:700}
body.dah-tp-site p{margin:0;color:var(--muted);font-size:16px}
body.dah-tp-site .lead{font-size:18px;line-height:1.95}
body.dah-tp-site .max-copy{max-width:700px}
body.dah-tp-site .section-head{display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,.65fr);align-items:end;gap:70px;margin-bottom:48px}
body.dah-tp-site .section-head p{font-size:17px}
body.dah-tp-site .btn{min-height:54px;padding:0 24px;border:1px solid transparent;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:15px;font-weight:800;cursor:pointer;transition:.25s ease}
body.dah-tp-site .btn:hover{transform:translateY(-2px)}
body.dah-tp-site .btn-primary{background:var(--sage);color:var(--ink);box-shadow:0 14px 34px rgba(126,174,109,.25)}
body.dah-tp-site .btn-dark{background:var(--ink);color:#fff}
body.dah-tp-site .btn-ghost{background:#fff;border-color:var(--line);color:var(--ink)}
body.dah-tp-site .btn-glass{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.24);color:#fff;backdrop-filter:blur(12px)}
body.dah-tp-site .link-arrow{display:inline-flex;align-items:center;gap:9px;font-weight:800;color:var(--green);font-size:15px}
body.dah-tp-site .link-arrow .arr{transition:.2s}
body.dah-tp-site .link-arrow:hover .arr{transform:translateX(-4px)}
html[dir=ltr] body.dah-tp-site .link-arrow:hover .arr{transform:translateX(4px)}
body.dah-tp-site .pill{display:inline-flex;padding:8px 12px;border-radius:999px;border:1px solid var(--line);font-size:15px;font-weight:800;background:rgba(255,255,255,.7)}
/* Header */
body.dah-tp-site .header{height:var(--header-h);position:fixed;inset:0 0 auto;z-index:1200;background:rgba(245,243,237,.90);backdrop-filter:blur(22px);border-bottom:1px solid var(--line)}
body.dah-tp-site .header-in{height:100%;display:flex;align-items:center;gap:28px}
body.dah-tp-site .brand{display:flex;align-items:center;gap:12px;flex:none}
body.dah-tp-site .brand-mark{width:44px;height:44px;border-radius:14px;background:var(--ink);position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
body.dah-tp-site .brand-mark:before, body.dah-tp-site .brand-mark:after{content:"";position:absolute;background:var(--sage);border-radius:999px;transform:rotate(-34deg)}
body.dah-tp-site .brand-mark:before{width:38px;height:10px;right:-4px;top:10px}
body.dah-tp-site .brand-mark:after{width:28px;height:8px;left:-4px;bottom:9px;opacity:.7}
body.dah-tp-site .brand-copy strong{display:block;font:700 20px/1 "El Messiri";color:var(--ink)}
body.dah-tp-site .brand-copy small{display:block;margin-top:6px;font-size:15px;letter-spacing:.16em;font-weight:800;color:#7a8a86}
body.dah-tp-site .nav{margin-inline:auto;display:flex;align-items:center;gap:24px;font-size:15px;font-weight:800}
body.dah-tp-site .nav a{padding:10px 0;position:relative}
body.dah-tp-site .nav a:after{content:"";position:absolute;bottom:4px;right:0;width:0;height:2px;background:var(--green);transition:.25s}
body.dah-tp-site .nav a:hover:after{width:100%}
body.dah-tp-site .header-actions{display:flex;align-items:center;gap:9px}
body.dah-tp-site .lang{height:42px;min-width:48px;padding:0 12px;border:1px solid var(--line);background:transparent;border-radius:999px;font-weight:800;cursor:pointer}
body.dah-tp-site .menu-btn{display:none;width:44px;height:44px;border-radius:14px;border:1px solid var(--line);background:#fff;align-items:center;justify-content:center;cursor:pointer}
body.dah-tp-site .menu-btn i, body.dah-tp-site .menu-btn i:before, body.dah-tp-site .menu-btn i:after{display:block;width:20px;height:2px;background:var(--ink);position:relative}
body.dah-tp-site .menu-btn i:before, body.dah-tp-site .menu-btn i:after{content:"";position:absolute;left:0}
body.dah-tp-site .menu-btn i:before{top:-6px}
body.dah-tp-site .menu-btn i:after{top:6px}
body.dah-tp-site .mobile-nav{position:fixed;z-index:1190;inset:var(--header-h) 0 auto;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 30px 60px rgba(4,30,26,.14);padding:18px 26px 28px;display:none}
body.dah-tp-site .mobile-nav.open{display:block}
body.dah-tp-site .mobile-nav a{display:flex;align-items:center;justify-content:space-between;padding:15px 0;border-bottom:1px solid var(--line);font-weight:800}
body.dah-tp-site .mobile-nav .btn{margin-top:18px;width:100%}
/* Hero */
body.dah-tp-site .hero{min-height:880px;padding-top:var(--header-h);position:relative;background:var(--ink);overflow:hidden;color:#fff}
body.dah-tp-site .hero-media{position:absolute;inset:0}
body.dah-tp-site .hero-media:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(3,24,21,.94) 0%,rgba(3,24,21,.83) 42%,rgba(3,24,21,.36) 72%,rgba(3,24,21,.18) 100%),linear-gradient(180deg,transparent 58%,rgba(3,24,21,.78) 100%)}
html[dir=ltr] body.dah-tp-site .hero-media:before{background:linear-gradient(-90deg,rgba(3,24,21,.94) 0%,rgba(3,24,21,.83) 42%,rgba(3,24,21,.36) 72%,rgba(3,24,21,.18) 100%),linear-gradient(180deg,transparent 58%,rgba(3,24,21,.78) 100%)}
body.dah-tp-site .hero-media img{filter:saturate(.84) contrast(1.03)}
body.dah-tp-site .hero-in{min-height:800px;position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.55fr);gap:80px;align-items:center}
body.dah-tp-site .hero-copy{padding:70px 0 132px}
body.dah-tp-site .hero .kicker{color:#cfe9bf}
body.dah-tp-site .hero h1{color:#fff;max-width:850px}
body.dah-tp-site .hero h1 em{font-style:normal;color:var(--sage)}
body.dah-tp-site .hero-copy>p{max-width:760px;margin-top:24px;color:rgba(255,255,255,.78);font-size:18px;line-height:2}
body.dah-tp-site .hero-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:34px}
body.dah-tp-site .hero-micro{display:flex;flex-wrap:wrap;gap:8px;margin-top:34px}
body.dah-tp-site .hero-micro span{font-size:15px;font-weight:700;padding:8px 12px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);border-radius:999px;color:rgba(255,255,255,.78);backdrop-filter:blur(8px)}
body.dah-tp-site .hero-side{align-self:end;margin-bottom:88px;padding:28px;border-radius:26px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.075);backdrop-filter:blur(18px);position:relative;overflow:hidden}
body.dah-tp-site .hero-side:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;background:var(--sage);filter:blur(110px);opacity:.13;left:-90px;top:-90px}
body.dah-tp-site .hero-side-label{font-size:15px;font-weight:800;color:#b9cbc6;letter-spacing:.12em}
body.dah-tp-site .hero-path{margin-top:18px;display:grid}
body.dah-tp-site .hero-step{display:grid;grid-template-columns:46px 1fr;gap:14px;padding-bottom:20px;position:relative}
body.dah-tp-site .hero-step:not(:last-child):before{content:"";position:absolute;right:22px;top:44px;bottom:0;width:1px;background:rgba(255,255,255,.17)}
html[dir=ltr] body.dah-tp-site .hero-step:not(:last-child):before{right:auto;left:22px}
body.dah-tp-site .hero-num{width:46px;height:46px;border:1px solid rgba(154,203,136,.36);background:rgba(154,203,136,.10);display:grid;place-items:center;border-radius:50%;font-weight:800;color:var(--sage);font-size:15px}
body.dah-tp-site .hero-step b{display:block;color:#fff;font-size:15px}
body.dah-tp-site .hero-step small{display:block;color:#8da29d;font-size:15px;margin-top:3px}
body.dah-tp-site .hero-bottom{position:absolute;z-index:3;inset:auto 0 0;border-top:1px solid rgba(255,255,255,.11);background:rgba(2,22,19,.64);backdrop-filter:blur(12px)}
body.dah-tp-site .hero-bottom-in{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}
body.dah-tp-site .hero-bottom b{font:700 17px "El Messiri";color:#fff}
body.dah-tp-site .hero-bottom p{font-size:15px;color:#8fa49f}
/* Sticky capability nav */
body.dah-tp-site .jump-shell{height:var(--jump-h);position:sticky;top:var(--header-h);z-index:1100}
body.dah-tp-site .jump{position:relative;top:auto;z-index:1;height:var(--jump-h);background:rgba(255,253,252,.97);border-bottom:1px solid var(--line);box-shadow:0 10px 30px rgba(5,36,31,.05);backdrop-filter:blur(18px)}
body.dah-tp-site .jump-in{height:100%;display:flex;align-items:center;gap:8px;overflow-x:auto;scrollbar-width:none}
body.dah-tp-site .jump-in::-webkit-scrollbar{display:none}
body.dah-tp-site .jump-label{flex:none;font:700 15px "El Messiri";color:var(--ink);margin-inline-end:4px}
body.dah-tp-site .jump a{flex:none;white-space:nowrap;padding:9px 14px;border-radius:999px;font-size:15px;font-weight:800;color:#71817d;border:1px solid transparent;transition:.2s}
body.dah-tp-site .jump a:hover, body.dah-tp-site .jump a.active{background:var(--green);color:#fff;box-shadow:0 8px 18px rgba(23,106,89,.18)}
/* Trust */
body.dah-tp-site .trust{background:#fff;border-bottom:1px solid var(--line);padding:38px 0}
body.dah-tp-site .trust-in{display:grid;grid-template-columns:250px 1fr;gap:42px;align-items:center}
body.dah-tp-site .trust-copy h3{font-size:20px}
body.dah-tp-site .trust-copy p{font-size:15px;margin-top:4px}
body.dah-tp-site .logo-row{display:grid;grid-template-columns:repeat(6,1fr);gap:11px}
body.dah-tp-site .logo-box{height:72px;border:1px solid var(--line);background:#fbfbf8;border-radius:16px;display:grid;place-items:center;color:#8a9793;font-size:15px;font-weight:800;letter-spacing:.06em;position:relative}
body.dah-tp-site .logo-box:before{content:"";width:18px;height:18px;border:2px solid #a8b4b0;border-radius:50%;position:absolute;top:11px;right:11px;opacity:.32}
/* Story / lifecycle */
body.dah-tp-site .story{background:#fff}
body.dah-tp-site .story-grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:90px;align-items:start}
body.dah-tp-site .story-sticky{position:sticky;top:170px}
body.dah-tp-site .story-sticky h2{max-width:540px}
body.dah-tp-site .story-sticky p{margin-top:20px;font-size:17px;max-width:540px}
body.dah-tp-site .story-note{margin-top:30px;padding:22px 24px;border-radius:20px;background:var(--paper);border:1px solid var(--line)}
body.dah-tp-site .story-note b{font:700 19px "El Messiri";color:var(--ink)}
body.dah-tp-site .story-note p{font-size:15px;margin-top:7px}
body.dah-tp-site .journey{border-top:1px solid var(--line)}
body.dah-tp-site .journey-step{display:grid;grid-template-columns:80px 1fr 120px;gap:22px;align-items:center;padding:29px 0;border-bottom:1px solid var(--line)}
body.dah-tp-site .journey-step .n{font:600 22px "El Messiri";color:var(--green)}
body.dah-tp-site .journey-step h3{font-size:23px}
body.dah-tp-site .journey-step p{font-size:15px;margin-top:4px}
body.dah-tp-site .journey-step .tag{justify-self:end;font-size:15px;font-weight:800;color:#75837f;border:1px solid var(--line);border-radius:999px;padding:8px 11px}
/* Category overview */
body.dah-tp-site .cap-overview{background:var(--paper)}
body.dah-tp-site .pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
body.dah-tp-site .pillar{min-height:460px;border-radius:26px;overflow:hidden;position:relative;background:#ddd;box-shadow:var(--shadow2)}
body.dah-tp-site .pillar:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,24,21,.04),rgba(3,24,21,.84))}
body.dah-tp-site .pillar img{transition:.45s}
body.dah-tp-site .pillar:hover img{transform:scale(1.035)}
body.dah-tp-site .pillar-copy{position:absolute;z-index:2;inset:auto 0 0;padding:28px}
body.dah-tp-site .pillar-copy span{font-size:15px;font-weight:800;color:#c5d4d0}
body.dah-tp-site .pillar-copy h3{color:#fff;font-size:29px;margin-top:7px}
body.dah-tp-site .pillar-copy p{color:rgba(255,255,255,.72);font-size:15px;margin-top:8px}
body.dah-tp-site .pillar-copy a{color:#fff;margin-top:18px}
body.dah-tp-site .pillar:nth-child(2){transform:translateY(22px)}
/* Shared service scene */
body.dah-tp-site .service{background:#fff}
body.dah-tp-site .service.alt{background:var(--paper)}
body.dah-tp-site .service-grid{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);gap:74px;align-items:center}
body.dah-tp-site .service-grid.reverse{grid-template-columns:minmax(0,.97fr) minmax(0,1.03fr)}
body.dah-tp-site .service-grid.reverse .service-media{order:2}
body.dah-tp-site .service-grid.reverse .service-copy{order:1}
body.dah-tp-site .service-media{height:620px;border-radius:30px;overflow:hidden;position:relative;box-shadow:var(--shadow)}
body.dah-tp-site .service-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 54%,rgba(4,29,25,.58))}
body.dah-tp-site .media-float{position:absolute;z-index:2;right:20px;left:20px;bottom:20px;padding:18px 20px;background:rgba(255,255,255,.90);border:1px solid rgba(255,255,255,.7);backdrop-filter:blur(14px);border-radius:18px;display:flex;align-items:center;justify-content:space-between;gap:20px}
body.dah-tp-site .media-float b{font:700 17px "El Messiri";color:var(--ink)}
body.dah-tp-site .media-float small{display:block;font-size:15px;color:#74827e}
body.dah-tp-site .service-copy h2{max-width:610px}
body.dah-tp-site .service-copy>.lead{margin-top:20px}
body.dah-tp-site .service-points{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:28px}
body.dah-tp-site .service-point{min-height:64px;display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.64);font-size:15px;font-weight:800;color:var(--ink)}
body.dah-tp-site .service-point i{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:var(--mint);color:var(--green);font-style:normal;font-size:15px;flex:none}
body.dah-tp-site .service-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:30px}
body.dah-tp-site .service-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:28px;padding-top:25px;border-top:1px solid var(--line)}
body.dah-tp-site .proof b{font:700 16px "El Messiri";color:var(--ink);display:block}
body.dah-tp-site .proof span{font-size:15px;color:var(--muted)}
/* Permit */
body.dah-tp-site .permit{background:var(--forest);color:#fff;padding:54px 0;position:relative;overflow:hidden}
body.dah-tp-site .permit:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:var(--sage);filter:blur(180px);opacity:.13;right:-180px;top:-220px}
body.dah-tp-site .permit-in{position:relative;display:grid;grid-template-columns:1.3fr .7fr;gap:50px;align-items:center}
body.dah-tp-site .permit .kicker{color:#d2e8c5}
body.dah-tp-site .permit h2{color:#fff;font-size:37px}
body.dah-tp-site .permit p{color:#a9bbb6;font-size:16px;margin-top:12px;max-width:800px}
body.dah-tp-site .permit-actions{justify-self:end;display:flex;gap:10px;flex-wrap:wrap}
/* Engineering technical */
body.dah-tp-site .engineering{background:#0a2421;color:#fff;overflow:hidden}
body.dah-tp-site .engineering .kicker{color:#cfe6c1}
body.dah-tp-site .engineering h2, body.dah-tp-site .engineering h3, body.dah-tp-site .engineering h4{color:#fff}
body.dah-tp-site .engineering .section-head p{color:#9db0ab}
body.dah-tp-site .eng-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:24px}
body.dah-tp-site .eng-visual{min-height:650px;border:1px solid rgba(255,255,255,.12);border-radius:28px;overflow:hidden;position:relative;background:#102d29}
body.dah-tp-site .eng-visual img{opacity:.72;filter:saturate(.65)}
body.dah-tp-site .eng-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,28,26,.10),rgba(7,28,26,.68))}
body.dah-tp-site .hotspot{position:absolute;z-index:2;width:38px;height:38px;border-radius:50%;background:var(--sage);color:var(--ink);display:grid;place-items:center;font-weight:800;border:6px solid rgba(255,255,255,.20);box-shadow:0 0 0 8px rgba(154,203,136,.11)}
body.dah-tp-site .hotspot.a{top:24%;right:28%}
body.dah-tp-site .hotspot.b{top:48%;left:20%}
body.dah-tp-site .hotspot.c{bottom:20%;right:44%}
body.dah-tp-site .eng-caption{position:absolute;z-index:2;inset:auto 22px 22px;background:rgba(5,27,24,.78);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(15px);border-radius:18px;padding:18px}
body.dah-tp-site .eng-caption b{font:700 18px "El Messiri"}
body.dah-tp-site .eng-caption p{font-size:15px;color:#a6b8b3;margin-top:5px}
body.dah-tp-site .eng-panels{display:grid;gap:11px}
body.dah-tp-site .eng-panel{border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:22px;background:rgba(255,255,255,.04)}
body.dah-tp-site .eng-panel-top{display:flex;align-items:center;justify-content:space-between;gap:15px}
body.dah-tp-site .eng-panel .num{font:600 17px "El Messiri";color:var(--sage)}
body.dah-tp-site .eng-panel p{font-size:15px;color:#91a59f;margin-top:6px}
body.dah-tp-site .eng-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:15px}
body.dah-tp-site .eng-tags span{font-size:15px;font-weight:800;color:#bfcec9;border:1px solid rgba(255,255,255,.13);border-radius:999px;padding:7px 9px}
body.dah-tp-site .eng-foot{margin-top:12px;padding:22px;border-radius:20px;background:var(--sage);color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:20px}
body.dah-tp-site .eng-foot b{font:700 20px "El Messiri";color:var(--ink)}
body.dah-tp-site .eng-foot p{font-size:15px;color:#2d493f;margin-top:3px}
/* Fire */
body.dah-tp-site .fire{background:#071715;color:#fff}
body.dah-tp-site .fire-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:72px;align-items:center}
body.dah-tp-site .fire-copy .kicker{color:#f4b6a6}
body.dah-tp-site .fire h2, body.dah-tp-site .fire h3{color:#fff}
body.dah-tp-site .fire-copy>.lead{color:#aab9b5;margin-top:20px}
body.dah-tp-site .fire-services{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:30px;border-top:1px solid rgba(255,255,255,.13)}
body.dah-tp-site .fire-item{padding:18px 0;border-bottom:1px solid rgba(255,255,255,.13);font-weight:800;font-size:15px;color:#e8efed}
body.dah-tp-site .fire-item:nth-child(even){padding-inline-start:24px;border-inline-start:1px solid rgba(255,255,255,.13)}
body.dah-tp-site .fire-copy .service-actions{margin-top:28px}
body.dah-tp-site .fire-media{height:610px;border-radius:30px;overflow:hidden;position:relative}
body.dah-tp-site .fire-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(4,18,16,.65))}
body.dah-tp-site .fire-stamp{position:absolute;z-index:2;right:20px;bottom:20px;left:20px;border-radius:18px;background:rgba(7,23,21,.74);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(14px);padding:18px}
body.dah-tp-site .fire-stamp b{font:700 17px "El Messiri"}
body.dah-tp-site .fire-stamp p{font-size:15px;color:#a9b8b4;margin-top:4px}
/* Infrastructure panoramic */
body.dah-tp-site .infrastructure{background:var(--paper)}
body.dah-tp-site .infra-stage{height:690px;border-radius:32px;overflow:hidden;position:relative;box-shadow:var(--shadow)}
body.dah-tp-site .infra-stage:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,27,24,.85),rgba(4,27,24,.42) 48%,rgba(4,27,24,.06) 78%),linear-gradient(180deg,transparent 60%,rgba(4,27,24,.56))}
html[dir=ltr] body.dah-tp-site .infra-stage:after{background:linear-gradient(-90deg,rgba(4,27,24,.85),rgba(4,27,24,.42) 48%,rgba(4,27,24,.06) 78%),linear-gradient(180deg,transparent 60%,rgba(4,27,24,.56))}
body.dah-tp-site .infra-copy{position:absolute;z-index:2;top:0;bottom:0;right:0;width:48%;padding:62px;display:flex;flex-direction:column;justify-content:center}
body.dah-tp-site .infra-copy .kicker{color:#d1e7c5}
body.dah-tp-site .infra-copy h2{color:#fff}
body.dah-tp-site .infra-copy>p{color:#c0cfcb;margin-top:18px;font-size:16px}
body.dah-tp-site .infra-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:26px}
body.dah-tp-site .infra-list span{padding:10px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.06);color:#f2f5f4;font-size:15px;font-weight:800}
body.dah-tp-site .infra-copy .btn{margin-top:28px;align-self:flex-start}
/* FM */
body.dah-tp-site .fm{background:#fff}
body.dah-tp-site .fm-intro{display:grid;grid-template-columns:.78fr 1.22fr;gap:80px;align-items:end;margin-bottom:42px}
body.dah-tp-site .fm-intro p{font-size:17px}
body.dah-tp-site .fm-board{display:grid;grid-template-columns:1fr 1fr;gap:16px}
body.dah-tp-site .fm-col{border-radius:26px;padding:30px;border:1px solid var(--line);background:var(--paper)}
body.dah-tp-site .fm-col.soft{background:var(--forest);border-color:transparent}
body.dah-tp-site .fm-col.soft h3, body.dah-tp-site .fm-col.soft .fm-service b{color:#fff}
body.dah-tp-site .fm-col.soft p, body.dah-tp-site .fm-col.soft .fm-service span{color:#a7b8b3}
body.dah-tp-site .fm-col-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-bottom:22px;border-bottom:1px solid var(--line)}
body.dah-tp-site .fm-col.soft .fm-col-head{border-color:rgba(255,255,255,.12)}
body.dah-tp-site .fm-col-head h3{font-size:29px}
body.dah-tp-site .fm-col-head p{font-size:15px;margin-top:5px}
body.dah-tp-site .fm-code{font:600 15px "El Messiri";color:var(--green)}
body.dah-tp-site .fm-col.soft .fm-code{color:var(--sage)}
body.dah-tp-site .fm-list{display:grid;grid-template-columns:1fr 1fr;gap:0 22px;margin-top:14px}
body.dah-tp-site .fm-service{padding:15px 0;border-bottom:1px solid var(--line)}
body.dah-tp-site .fm-col.soft .fm-service{border-color:rgba(255,255,255,.12)}
body.dah-tp-site .fm-service b{display:block;font-size:15px;color:var(--ink)}
body.dah-tp-site .fm-service span{display:block;font-size:15px;color:var(--muted);margin-top:3px}
body.dah-tp-site .fm-control{margin-top:16px;border-radius:26px;background:#edf3e9;border:1px solid #dbe7d4;padding:28px;display:grid;grid-template-columns:1fr 1.2fr;gap:46px;align-items:center}
body.dah-tp-site .fm-control h3{font-size:28px}
body.dah-tp-site .fm-control p{font-size:15px;margin-top:8px}
body.dah-tp-site .control-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
body.dah-tp-site .control{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px}
body.dah-tp-site .control b{font:700 15px "El Messiri";display:block;color:var(--ink)}
body.dah-tp-site .control span{font-size:15px;color:var(--muted)}
/* Accommodation */
body.dah-tp-site .accom{background:var(--paper)}
body.dah-tp-site .accom-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:80px;align-items:center}
body.dah-tp-site .accom-media{height:600px;position:relative}
body.dah-tp-site .accom-main{position:absolute;inset:0 12% 10% 0;border-radius:30px;overflow:hidden;box-shadow:var(--shadow)}
html[dir=ltr] body.dah-tp-site .accom-main{inset:0 0 10% 12%}
body.dah-tp-site .accom-small{position:absolute;width:44%;height:38%;left:0;bottom:0;border-radius:24px;overflow:hidden;border:8px solid var(--paper);box-shadow:var(--shadow2)}
html[dir=ltr] body.dah-tp-site .accom-small{left:auto;right:0}
body.dah-tp-site .accom-copy>.lead{margin-top:20px}
body.dah-tp-site .accom-list{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:26px}
body.dah-tp-site .accom-list div{padding:13px 14px;background:#fff;border:1px solid var(--line);border-radius:13px;font-size:15px;font-weight:800}
body.dah-tp-site .accom-note{margin-top:25px;padding:18px 20px;border-inline-start:3px solid var(--sage);background:#fff;border-radius:0 16px 16px 0;font-size:15px;color:var(--muted)}
html[dir=ltr] body.dah-tp-site .accom-note{border-inline-start:3px solid var(--sage);border-radius:0 16px 16px 0}
/* Project */
body.dah-tp-site .projects{background:#fff}
body.dah-tp-site .featured-project{display:grid;grid-template-columns:1.12fr .88fr;border-radius:30px;overflow:hidden;background:var(--ink);color:#fff;box-shadow:var(--shadow)}
body.dah-tp-site .project-media{height:650px;position:relative}
body.dah-tp-site .project-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(3,24,21,.45))}
body.dah-tp-site .project-copy{padding:48px;display:flex;flex-direction:column;justify-content:center}
body.dah-tp-site .project-copy .kicker{color:#d1e7c5}
body.dah-tp-site .project-copy h2{color:#fff;font-size:42px}
body.dah-tp-site .project-copy>p{color:#9fb1ac;font-size:15px;margin-top:15px}
body.dah-tp-site .project-meta{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:26px}
body.dah-tp-site .meta{border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:13px}
body.dah-tp-site .meta span{display:block;font-size:15px;color:#829994}
body.dah-tp-site .meta b{display:block;font-size:15px;color:#fff;margin-top:3px}
body.dah-tp-site .project-flow{margin-top:26px;border-top:1px solid rgba(255,255,255,.12)}
body.dah-tp-site .project-flow div{display:grid;grid-template-columns:88px 1fr;gap:18px;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.12)}
body.dah-tp-site .project-flow b{font:700 15px "El Messiri";color:var(--sage)}
body.dah-tp-site .project-flow span{font-size:15px;color:#a7b6b2}
body.dah-tp-site .project-copy .btn{margin-top:26px;align-self:flex-start}
body.dah-tp-site .project-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:14px;margin-top:16px}
body.dah-tp-site .project-card{height:330px;border-radius:22px;overflow:hidden;position:relative}
body.dah-tp-site .project-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(4,27,24,.82))}
body.dah-tp-site .project-card div{position:absolute;z-index:2;inset:auto 18px 18px}
body.dah-tp-site .project-card b{font:700 19px "El Messiri";color:#fff}
body.dah-tp-site .project-card span{display:block;color:#c1cdca;font-size:15px;margin-top:4px}
/* industries */
body.dah-tp-site .industries{background:var(--paper)}
body.dah-tp-site .industries-box{display:grid;grid-template-columns:330px 1fr;min-height:560px;border-radius:28px;overflow:hidden;background:#fff;border:1px solid var(--line)}
body.dah-tp-site .industry-tabs{padding:14px;border-inline-end:1px solid var(--line)}
body.dah-tp-site .industry-tab{width:100%;border:0;background:transparent;padding:17px 15px;border-radius:14px;display:flex;align-items:center;justify-content:space-between;gap:15px;cursor:pointer;text-align:start;font-weight:800;color:#6f7f7b}
body.dah-tp-site .industry-tab span:last-child{font:600 15px "El Messiri";color:#a2aeaa}
body.dah-tp-site .industry-tab.active{background:var(--forest);color:#fff}
body.dah-tp-site .industry-tab.active span:last-child{color:var(--sage)}
body.dah-tp-site .industry-display{position:relative;min-height:560px;overflow:hidden}
body.dah-tp-site .industry-display:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(3,24,21,.76))}
body.dah-tp-site .industry-content{position:absolute;z-index:2;inset:auto 0 0;padding:38px}
body.dah-tp-site .industry-content h3{color:#fff;font-size:33px}
body.dah-tp-site .industry-content p{color:#c1cfcb;max-width:680px;font-size:15px;margin-top:9px}
body.dah-tp-site .industry-services{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}
body.dah-tp-site .industry-services span{font-size:15px;font-weight:800;color:#fff;padding:7px 9px;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.07)}
/* why */
body.dah-tp-site .why{background:var(--forest);color:#fff}
body.dah-tp-site .why .kicker{color:#d1e8c5}
body.dah-tp-site .why .section-head h2{color:#fff}
body.dah-tp-site .why .section-head p{color:#a7bbb5}
body.dah-tp-site .why-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.13);border-bottom:1px solid rgba(255,255,255,.13)}
body.dah-tp-site .why-item{padding:32px 25px;border-inline-end:1px solid rgba(255,255,255,.13)}
body.dah-tp-site .why-item:last-child{border-inline-end:0}
body.dah-tp-site .why-item .n{font:600 15px "El Messiri";color:var(--sage)}
body.dah-tp-site .why-item h3{color:#fff;font-size:23px;margin-top:27px}
body.dah-tp-site .why-item p{color:#9fb2ad;font-size:15px;margin-top:9px}
/* Clients */
body.dah-tp-site .clients{background:#fff}
body.dah-tp-site .client-wall{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
body.dah-tp-site .client{height:112px;border:1px solid var(--line);border-radius:17px;background:#fbfbf8;display:flex;align-items:center;justify-content:center;position:relative;color:#82918d;font-size:15px;font-weight:800;letter-spacing:.05em;transition:.2s}
body.dah-tp-site .client:hover{transform:translateY(-3px);border-color:rgba(23,106,89,.32);box-shadow:var(--shadow2)}
body.dah-tp-site .client small{position:absolute;bottom:9px;font-size:15px;color:#a3afab;letter-spacing:0}
body.dah-tp-site .client-note{margin-top:18px;font-size:15px;color:#889591}
/* credentials */
body.dah-tp-site .credentials{background:var(--paper)}
body.dah-tp-site .cred-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
body.dah-tp-site .cred-copy p{font-size:16px;margin-top:16px}
body.dah-tp-site .cred-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}
body.dah-tp-site .cred{min-height:210px;border:1px solid var(--line);border-radius:21px;background:#fff;padding:23px;display:flex;flex-direction:column;justify-content:space-between}
body.dah-tp-site .cred-icon{width:48px;height:48px;border-radius:14px;background:var(--mint);display:grid;place-items:center;color:var(--green);font-weight:800}
body.dah-tp-site .cred h4{font-size:18px}
body.dah-tp-site .cred p{font-size:15px;margin-top:5px}
body.dah-tp-site .cred small{font-size:15px;color:#9aa6a2}
/* Insights */
body.dah-tp-site .insights{background:#fff}
body.dah-tp-site .insight-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:14px}
body.dah-tp-site .article-main, body.dah-tp-site .article-small{position:relative;overflow:hidden;border-radius:25px}
body.dah-tp-site .article-main{height:520px}
body.dah-tp-site .article-main:after, body.dah-tp-site .article-small:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(3,24,21,.82))}
body.dah-tp-site .article-copy{position:absolute;z-index:2;inset:auto 25px 25px}
body.dah-tp-site .article-copy span{font-size:15px;font-weight:800;color:#d4e3df}
body.dah-tp-site .article-copy h3{color:#fff;font-size:30px;margin-top:6px}
body.dah-tp-site .article-copy p{color:#c1cfcb;font-size:15px;margin-top:5px}
body.dah-tp-site .article-side{display:grid;grid-template-columns:1fr;gap:14px}
body.dah-tp-site .article-small{height:253px}
body.dah-tp-site .article-small .article-copy{inset:auto 18px 18px}
body.dah-tp-site .article-small .article-copy h3{font-size:21px}
/* FAQ */
body.dah-tp-site .faq{background:var(--paper)}
body.dah-tp-site .faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px;align-items:start}
body.dah-tp-site .faq-copy{position:sticky;top:170px}
body.dah-tp-site .faq-copy p{font-size:16px;margin-top:16px}
body.dah-tp-site .faq-list{border-top:1px solid var(--line)}
body.dah-tp-site details{border-bottom:1px solid var(--line)}
body.dah-tp-site summary{list-style:none;cursor:pointer;padding:22px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;font-weight:800;color:var(--ink);font-size:16px}
body.dah-tp-site summary::-webkit-details-marker{display:none}
body.dah-tp-site summary:after{content:"+";font:400 27px "El Messiri";color:var(--green)}
body.dah-tp-site details[open] summary:after{content:"−"}
body.dah-tp-site .answer{padding:0 0 22px;max-width:820px;font-size:15px;color:var(--muted)}
/* Request */
body.dah-tp-site .request{background:var(--forest);color:#fff;overflow:hidden}
body.dah-tp-site .request:before{content:"";position:absolute;width:480px;height:480px;background:var(--sage);border-radius:50%;filter:blur(190px);opacity:.10;left:-250px;bottom:-250px}
body.dah-tp-site .request-grid{position:relative;display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}
body.dah-tp-site .request-copy{position:sticky;top:170px}
body.dah-tp-site .request .kicker{color:#d3e8c8}
body.dah-tp-site .request h2{color:#fff}
body.dah-tp-site .request-copy p{font-size:16px;color:#a6b9b3;margin-top:18px}
body.dah-tp-site .contact-mini{display:grid;gap:10px;margin-top:28px}
body.dah-tp-site .contact-mini div{padding:13px 15px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.04)}
body.dah-tp-site .contact-mini b{display:block;color:#fff;font-size:15px}
body.dah-tp-site .contact-mini span{display:block;color:#92a7a1;font-size:15px;margin-top:2px}
body.dah-tp-site .form{background:#fff;border-radius:26px;padding:28px;color:var(--ink);box-shadow:var(--shadow)}
body.dah-tp-site .form h3{font-size:26px}
body.dah-tp-site .form>p{font-size:15px;margin-top:6px}
body.dah-tp-site .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}
body.dah-tp-site .field{display:grid;gap:7px}
body.dah-tp-site .field.full{grid-column:1/-1}
body.dah-tp-site .field label{font-size:15px;font-weight:800;color:#566a65}
body.dah-tp-site .field input, body.dah-tp-site .field select, body.dah-tp-site .field textarea{width:100%;border:1px solid var(--line);background:#fbfbf8;border-radius:13px;padding:13px 14px;outline:none;color:var(--ink);font-size:15px}
body.dah-tp-site .field textarea{min-height:115px;resize:vertical}
body.dah-tp-site .field input:focus, body.dah-tp-site .field select:focus, body.dah-tp-site .field textarea:focus{border-color:rgba(23,106,89,.5);box-shadow:0 0 0 4px rgba(23,106,89,.06)}
body.dah-tp-site .form .btn{width:100%;margin-top:14px}
/* Footer */
body.dah-tp-site .footer{background:#031411;color:#fff;padding:70px 0 22px}
body.dah-tp-site .footer-grid{display:grid;grid-template-columns:1.45fr repeat(3,1fr);gap:58px}
body.dah-tp-site .footer .brand-copy strong{color:#fff}
body.dah-tp-site .footer-brand p{font-size:15px;color:#879b95;max-width:360px;margin-top:18px}
body.dah-tp-site .footer h4{color:#fff;font-size:17px;margin-bottom:16px}
body.dah-tp-site .footer-links{display:grid;gap:10px}
body.dah-tp-site .footer-links a{font-size:15px;color:#8fa39d}
body.dah-tp-site .footer-links a:hover{color:var(--sage)}
body.dah-tp-site .footer-bottom{margin-top:55px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;gap:20px;color:#708781;font-size:15px}
/* modal */
body.dah-tp-site .modal-backdrop{position:fixed;z-index:2000;inset:0;background:rgba(2,18,16,.78);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;padding:20px}
body.dah-tp-site .modal-backdrop.open{display:flex}
body.dah-tp-site .modal{width:min(820px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:28px;padding:32px;position:relative;box-shadow:0 35px 110px rgba(0,0,0,.34)}
body.dah-tp-site .modal-close{position:absolute;left:22px;top:22px;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:#fff;cursor:pointer;font-size:22px}
html[dir=ltr] body.dah-tp-site .modal-close{left:auto;right:22px}
body.dah-tp-site .modal h2{font-size:34px;padding-inline-end:50px}
body.dah-tp-site .modal>p{font-size:15px;margin-top:10px}
body.dah-tp-site .modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:25px 0}
body.dah-tp-site .modal-card{padding:18px;border:1px solid var(--line);border-radius:16px;background:#fbfbf8}
body.dah-tp-site .modal-card b{font:700 17px "El Messiri";color:var(--ink)}
body.dah-tp-site .modal-card p{font-size:15px;margin-top:4px}
body.dah-tp-site .modal-note{padding:13px 15px;border-radius:13px;background:#eef3ea;color:#71807c;font-size:15px;margin-bottom:16px}
/* responsive */
@media (max-width:1120px){:root{--header-h:72px}
body.dah-tp-site .nav{display:none}
body.dah-tp-site .menu-btn{display:flex}
body.dah-tp-site .header-actions .btn{display:none}
body.dah-tp-site .header-in{justify-content:space-between}
body.dah-tp-site .hero-in{grid-template-columns:1fr .62fr;gap:38px}
body.dah-tp-site .service-grid, body.dah-tp-site .service-grid.reverse, body.dah-tp-site .fire-grid, body.dah-tp-site .accom-grid{gap:46px}
body.dah-tp-site .why-grid{grid-template-columns:1fr 1fr}
body.dah-tp-site .why-item:nth-child(2){border-inline-end:0}
body.dah-tp-site .why-item:nth-child(-n/**/+2){border-bottom:1px solid rgba(255,255,255,.13)}
body.dah-tp-site .client-wall{grid-template-columns:repeat(4,1fr)}
body.dah-tp-site .cred-grid{gap:40px}}
@media (max-width:900px){body.dah-tp-site .wrap{width:min(var(--max),calc(100% - 36px))}
body.dah-tp-site .section{padding:82px 0}
body.dah-tp-site .section-head{grid-template-columns:1fr;gap:16px}
body.dah-tp-site .hero{min-height:auto}
body.dah-tp-site .hero-in{grid-template-columns:1fr;min-height:auto;padding:50px 0 132px}
body.dah-tp-site .hero-copy{padding:42px 0 0}
body.dah-tp-site .hero-side{align-self:auto;max-width:560px;margin:0}
body.dah-tp-site .hero-bottom p{display:none}
body.dah-tp-site .trust-in{grid-template-columns:1fr}
body.dah-tp-site .logo-row{grid-template-columns:repeat(3,1fr)}
body.dah-tp-site .story-grid, body.dah-tp-site .fm-intro, body.dah-tp-site .cred-grid, body.dah-tp-site .faq-grid, body.dah-tp-site .request-grid{grid-template-columns:1fr;gap:42px}
body.dah-tp-site .story-sticky, body.dah-tp-site .faq-copy, body.dah-tp-site .request-copy{position:static}
body.dah-tp-site .pillar-grid{grid-template-columns:1fr 1fr}
body.dah-tp-site .pillar:last-child{grid-column:1/-1}
body.dah-tp-site .pillar:nth-child(2){transform:none}
body.dah-tp-site .service-grid, body.dah-tp-site .service-grid.reverse, body.dah-tp-site .fire-grid, body.dah-tp-site .accom-grid{grid-template-columns:1fr;gap:38px}
body.dah-tp-site .service-grid.reverse .service-media, body.dah-tp-site .service-grid.reverse .service-copy{order:initial}
body.dah-tp-site .service-media, body.dah-tp-site .fire-media{height:520px}
body.dah-tp-site .permit-in{grid-template-columns:1fr}
body.dah-tp-site .permit-actions{justify-self:start}
body.dah-tp-site .eng-layout{grid-template-columns:1fr}
body.dah-tp-site .eng-visual{min-height:520px}
body.dah-tp-site .infra-copy{width:70%}
body.dah-tp-site .fm-control{grid-template-columns:1fr}
body.dah-tp-site .featured-project{grid-template-columns:1fr}
body.dah-tp-site .project-media{height:470px}
body.dah-tp-site .project-grid{grid-template-columns:1fr 1fr}
body.dah-tp-site .project-card:first-child{grid-column:1/-1}
body.dah-tp-site .industries-box{grid-template-columns:1fr}
body.dah-tp-site .industry-tabs{display:flex;overflow-x:auto;border-inline-end:0;border-bottom:1px solid var(--line);gap:6px}
body.dah-tp-site .industry-tab{width:auto;min-width:max-content;border-radius:999px;padding:11px 14px}
body.dah-tp-site .industry-tab span:last-child{display:none}
body.dah-tp-site .client-wall{grid-template-columns:repeat(3,1fr)}
body.dah-tp-site .cred-cards{grid-template-columns:repeat(3,1fr)}
body.dah-tp-site .insight-grid{grid-template-columns:1fr}
body.dah-tp-site .article-side{grid-template-columns:1fr 1fr}
body.dah-tp-site .footer-grid{grid-template-columns:1.4fr 1fr 1fr}
body.dah-tp-site .footer-grid>div:last-child{grid-column:2/4}}
@media (max-width:640px){:root{--header-h:66px;--jump-h:58px}
body.dah-tp-site .wrap{width:calc(100% - 28px)}
body.dah-tp-site .section{padding:70px 0}
body.dah-tp-site .kicker{font-size:15px}
body.dah-tp-site h1{font-size:40px}
body.dah-tp-site h2{font-size:31px}
body.dah-tp-site h3{font-size:23px}
body.dah-tp-site p{font-size:15px}
body.dah-tp-site .lead{font-size:16px}
body.dah-tp-site .brand-mark{width:38px;height:38px}
body.dah-tp-site .brand-copy strong{font-size:17px}
body.dah-tp-site .brand-copy small{font-size:15px}
body.dah-tp-site .lang{height:39px;min-width:44px}
body.dah-tp-site .menu-btn{width:40px;height:40px}
body.dah-tp-site .hero-media:before{background:linear-gradient(180deg,rgba(3,24,21,.74),rgba(3,24,21,.95))}
body.dah-tp-site .hero-in{padding:28px 0 128px}
body.dah-tp-site .hero-copy>p{font-size:16px}
body.dah-tp-site .hero-actions{display:grid}
body.dah-tp-site .hero-actions .btn{width:100%}
body.dah-tp-site .hero-micro{gap:5px}
body.dah-tp-site .hero-micro span{font-size:15px}
body.dah-tp-site .hero-side{padding:21px}
body.dah-tp-site .hero-bottom b{font-size:15px}
body.dah-tp-site .jump-in{margin-inline:-14px;padding-inline:14px}
body.dah-tp-site .jump-label{display:none}
body.dah-tp-site .jump a{font-size:15px;padding:8px 12px}
body.dah-tp-site .trust{padding:28px 0}
body.dah-tp-site .logo-row{grid-template-columns:repeat(2,1fr)}
body.dah-tp-site .logo-box{height:64px}
body.dah-tp-site .journey-step{grid-template-columns:56px 1fr;gap:13px}
body.dah-tp-site .journey-step .tag{display:none}
body.dah-tp-site .journey-step h3{font-size:19px}
body.dah-tp-site .pillar-grid{grid-template-columns:1fr}
body.dah-tp-site .pillar:last-child{grid-column:auto}
body.dah-tp-site .pillar{min-height:430px}
body.dah-tp-site .service-media, body.dah-tp-site .fire-media{height:420px;border-radius:22px}
body.dah-tp-site .media-float{padding:14px;right:13px;left:13px;bottom:13px}
body.dah-tp-site .media-float small{display:none}
body.dah-tp-site .service-points{grid-template-columns:1fr}
body.dah-tp-site .service-point{font-size:15px;min-height:58px}
body.dah-tp-site .service-proof{grid-template-columns:1fr}
body.dah-tp-site .permit h2{font-size:30px}
body.dah-tp-site .permit-actions{display:grid;width:100%}
body.dah-tp-site .permit-actions .btn{width:100%}
body.dah-tp-site .eng-visual{min-height:390px}
body.dah-tp-site .hotspot{width:32px;height:32px;border-width:4px}
body.dah-tp-site .eng-panel{padding:18px}
body.dah-tp-site .eng-foot{display:grid}
body.dah-tp-site .fire-services{grid-template-columns:1fr}
body.dah-tp-site .fire-item:nth-child(even){padding-inline-start:0;border-inline-start:0}
body.dah-tp-site .infra-stage{height:650px;border-radius:23px}
body.dah-tp-site .infra-copy{width:100%;padding:25px;justify-content:end}
body.dah-tp-site .infra-list{grid-template-columns:1fr}
body.dah-tp-site .fm-board{grid-template-columns:1fr}
body.dah-tp-site .fm-col{padding:22px}
body.dah-tp-site .fm-list{grid-template-columns:1fr}
body.dah-tp-site .fm-control{padding:22px}
body.dah-tp-site .control-grid{grid-template-columns:1fr 1fr}
body.dah-tp-site .accom-media{height:470px}
body.dah-tp-site .accom-main{inset:0 7% 10% 0}
body.dah-tp-site .accom-small{border-width:6px}
body.dah-tp-site .accom-list{grid-template-columns:1fr}
body.dah-tp-site .featured-project{border-radius:23px}
body.dah-tp-site .project-media{height:340px}
body.dah-tp-site .project-copy{padding:25px}
body.dah-tp-site .project-copy h2{font-size:31px}
body.dah-tp-site .project-meta{grid-template-columns:1fr 1fr}
body.dah-tp-site .project-flow div{grid-template-columns:70px 1fr}
body.dah-tp-site .project-grid{grid-template-columns:1fr}
body.dah-tp-site .project-card:first-child{grid-column:auto}
body.dah-tp-site .project-card{height:280px}
body.dah-tp-site .industry-display{min-height:490px}
body.dah-tp-site .industry-content{padding:24px}
body.dah-tp-site .industry-content h3{font-size:26px}
body.dah-tp-site .why-grid{grid-template-columns:1fr}
body.dah-tp-site .why-item{border-inline-end:0!important;border-bottom:1px solid rgba(255,255,255,.13)!important}
body.dah-tp-site .why-item:last-child{border-bottom:0!important}
body.dah-tp-site .client-wall{grid-template-columns:1fr 1fr}
body.dah-tp-site .client{height:92px}
body.dah-tp-site .cred-cards{grid-template-columns:1fr}
body.dah-tp-site .article-main{height:430px}
body.dah-tp-site .article-side{grid-template-columns:1fr}
body.dah-tp-site .article-small{height:260px}
body.dah-tp-site .article-copy h3{font-size:24px}
body.dah-tp-site .faq-grid{gap:28px}
body.dah-tp-site summary{font-size:15px}
body.dah-tp-site .form{padding:21px}
body.dah-tp-site .form-grid{grid-template-columns:1fr}
body.dah-tp-site .field.full{grid-column:auto}
body.dah-tp-site .footer{padding-top:55px}
body.dah-tp-site .footer-grid{grid-template-columns:1fr 1fr;gap:34px}
body.dah-tp-site .footer-brand{grid-column:1/-1}
body.dah-tp-site .footer-grid>div:last-child{grid-column:auto}
body.dah-tp-site .footer-bottom{display:grid}
body.dah-tp-site .modal{padding:24px;border-radius:22px}
body.dah-tp-site .modal h2{font-size:27px}
body.dah-tp-site .modal-grid{grid-template-columns:1fr}
body.dah-tp-site .modal-close{left:15px;top:15px}
body.dah-tp-site .section-head{margin-bottom:34px}}
@media (max-width:380px){body.dah-tp-site h1{font-size:36px}
body.dah-tp-site h2{font-size:29px}
body.dah-tp-site .client-wall{grid-template-columns:1fr 1fr}
body.dah-tp-site .control-grid{grid-template-columns:1fr}
body.dah-tp-site .project-meta{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}body.dah-tp-site *{scroll-behavior:auto!important;transition:none!important}}
/* V7 — Terra Pulse approved visual palette + reliable navigation */
body.dah-tp-site{background:var(--paper);color:var(--text)}
body.dah-tp-site section[id], body.dah-tp-site .permit[id]{scroll-margin-top:calc(var(--header-h) + var(--jump-h) + 22px)}
body.dah-tp-site .header{background:rgba(244,241,232,.94);border-bottom-color:rgba(89,99,72,.15)}
body.dah-tp-site .brand-mark{background:var(--olive)}
body.dah-tp-site .brand-mark:before, body.dah-tp-site .brand-mark:after{background:var(--sand)}
body.dah-tp-site .btn-primary{background:var(--olive);color:#fff;box-shadow:0 14px 34px rgba(89,99,72,.22)}
body.dah-tp-site .btn-primary:hover{background:#4F5940}
body.dah-tp-site .btn-dark{background:var(--ink);color:#fff}
body.dah-tp-site .btn-ghost{background:var(--white)}
body.dah-tp-site .kicker{color:var(--olive)}
body.dah-tp-site .kicker:before{background:var(--olive3)}
body.dah-tp-site .link-arrow{color:var(--olive)}
body.dah-tp-site .jump{border-bottom:1px solid rgba(89,99,72,.16);box-shadow:0 10px 28px rgba(48,55,42,.065)}
body.dah-tp-site .jump a:hover, body.dah-tp-site .jump a.active{background:var(--olive);color:#fff;box-shadow:0 8px 18px rgba(89,99,72,.18)}
body.dah-tp-site .hero{background:var(--ink)}
body.dah-tp-site .hero-media:before{background:linear-gradient(90deg,rgba(48,55,42,.97) 0%,rgba(48,55,42,.90) 43%,rgba(48,55,42,.48) 74%,rgba(48,55,42,.24) 100%),linear-gradient(180deg,transparent 55%,rgba(48,55,42,.90) 100%)}
html[dir=ltr] body.dah-tp-site .hero-media:before{background:linear-gradient(-90deg,rgba(48,55,42,.97) 0%,rgba(48,55,42,.90) 43%,rgba(48,55,42,.48) 74%,rgba(48,55,42,.24) 100%),linear-gradient(180deg,transparent 55%,rgba(48,55,42,.90) 100%)}
body.dah-tp-site .hero .kicker, body.dah-tp-site .hero h1 em{color:#E7E0C9}
body.dah-tp-site .hero-num{border-color:rgba(221,215,195,.40);background:rgba(221,215,195,.12);color:#EEE8D5}
body.dah-tp-site .hero-side:after{background:var(--sand)}
body.dah-tp-site .hero-bottom{background:rgba(48,55,42,.76)}
body.dah-tp-site .trust, body.dah-tp-site .story{background:var(--white)}
body.dah-tp-site .logo-box{background:#F7F5EE;border-color:rgba(89,99,72,.14)}
body.dah-tp-site .pill{background:rgba(255,253,252,.82)}
/* Contracting — official client content */
body.dah-tp-site .contracting{background:linear-gradient(180deg,var(--sand2),var(--paper))}
body.dah-tp-site .contract-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr);gap:74px;align-items:center}
body.dah-tp-site .contract-media{height:650px;border-radius:30px;overflow:hidden;position:relative;box-shadow:var(--shadow)}
body.dah-tp-site .contract-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(48,55,42,.78))}
body.dah-tp-site .contract-badge{position:absolute;z-index:2;right:24px;left:24px;bottom:24px;background:rgba(255,253,252,.94);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.6);border-radius:20px;padding:18px 20px;display:flex;justify-content:space-between;gap:20px;align-items:center}
body.dah-tp-site .contract-badge b{font:700 18px "El Messiri";color:var(--ink)}
body.dah-tp-site .contract-badge span{font-size:15px;color:var(--muted)}
body.dah-tp-site .contract-copy .lead{margin-top:18px}
body.dah-tp-site .contract-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:28px 0}
body.dah-tp-site .contract-list div{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:14px 15px;font-size:15px;font-weight:800;color:var(--text);display:flex;gap:10px;align-items:flex-start}
body.dah-tp-site .contract-list div:before{content:"✓";color:var(--olive);font-weight:900}
body.dah-tp-site .service-actions{display:flex;flex-wrap:wrap;gap:11px;align-items:center}
/* Permit hub */
body.dah-tp-site .permit{background:var(--olive);color:#fff}
body.dah-tp-site .permit h2, body.dah-tp-site .permit p, body.dah-tp-site .permit .kicker{color:#fff}
body.dah-tp-site .permit .kicker:before{background:var(--sand)}
body.dah-tp-site .permit-expanded{display:grid;grid-template-columns:minmax(0,.8fr) minmax(520px,1.2fr);gap:58px;align-items:center}
body.dah-tp-site .license-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
body.dah-tp-site .license-card{min-height:128px;padding:18px;border:1px solid rgba(255,255,255,.17);background:rgba(255,255,255,.075);border-radius:18px;backdrop-filter:blur(10px)}
body.dah-tp-site .license-card b{display:block;font:700 17px "El Messiri";color:#fff}
body.dah-tp-site .license-card span{display:block;margin-top:5px;font-size:15px;color:rgba(255,255,255,.70);line-height:1.7}
body.dah-tp-site .permit .btn-primary{background:var(--sand);color:var(--ink)}
/* Landscaping / external facilities */
body.dah-tp-site .landscape{background:var(--white)}
body.dah-tp-site .landscape-grid{display:grid;grid-template-columns:minmax(420px,1.05fr) minmax(0,.95fr);gap:70px;align-items:center}
body.dah-tp-site .landscape-media{height:610px;border-radius:30px;overflow:hidden;position:relative}
body.dah-tp-site .landscape-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(48,55,42,.60))}
body.dah-tp-site .landscape-copy .lead{margin:18px 0 26px}
body.dah-tp-site .landscape-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:26px}
body.dah-tp-site .landscape-list div{padding:13px 14px;border-bottom:1px solid var(--line);font-size:15px;font-weight:800}
/* Make future-page CTAs visually explicit */
body.dah-tp-site .more-service{background:transparent;border-color:rgba(89,99,72,.35);color:var(--olive)}
body.dah-tp-site .fire .more-service{border-color:rgba(255,255,255,.28);color:#fff;background:rgba(255,255,255,.06)}
/* Official contact panel */
body.dah-tp-site .contact-official{margin-top:26px;border-top:1px solid rgba(255,255,255,.14);padding-top:22px;display:grid;gap:14px}
body.dah-tp-site .contact-official a, body.dah-tp-site .contact-official span{color:rgba(255,255,255,.78);font-size:15px}
body.dah-tp-site .contact-official b{color:#fff;font-size:15px}
@media (max-width:980px){body.dah-tp-site .contract-grid, body.dah-tp-site .permit-expanded, body.dah-tp-site .landscape-grid{grid-template-columns:1fr;gap:38px}
body.dah-tp-site .contract-media, body.dah-tp-site .landscape-media{height:520px}
body.dah-tp-site .contract-copy{order:-1}
body.dah-tp-site .license-grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){body.dah-tp-site .contract-media, body.dah-tp-site .landscape-media{height:410px;border-radius:22px}
body.dah-tp-site .contract-list, body.dah-tp-site .license-grid, body.dah-tp-site .landscape-list{grid-template-columns:1fr}
body.dah-tp-site .contract-badge{right:12px;left:12px;bottom:12px;padding:14px;display:grid}
body.dah-tp-site .service-actions{display:grid}
body.dah-tp-site .service-actions .btn{width:100%}
body.dah-tp-site .hero-media:before{background:linear-gradient(180deg,rgba(48,55,42,.72),rgba(48,55,42,.97))}}
/* ===== V8 BRAND / HEADER / HERO / SCROLL OVERRIDES ===== */
:root{
 --primary:#002451;--secondary:#006754;--tertiary:#C99E6B;--neutral:#F5FAFB;
 --ink:#002451;--forest:#002451;--green:#006754;--green2:#087A65;--green3:#11947A;--sage:#C99E6B;--mint:#E8F4F0;
 --paper:#F5FAFB;--cream:#F1E6D8;--white:#FFFFFF;--text:#18364D;--muted:#62717E;--line:rgba(0,36,81,.12);
 --sand:#C99E6B;--sand2:#F6EEE5;--olive:#006754;--olive2:#0A7A67;--olive3:#65A696;
 --shadow:0 30px 80px rgba(0,36,81,.12);--shadow2:0 18px 45px rgba(0,36,81,.08);--header-h:94px;--jump-h:62px;
}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + var(--jump-h) + 22px)}
body.dah-tp-site [id]{scroll-margin-top:calc(var(--header-h) + var(--jump-h) + 22px)}
body.dah-tp-site{background:var(--neutral);color:var(--text)}
body.dah-tp-site .kicker{color:var(--secondary)}
body.dah-tp-site .kicker:before{background:var(--tertiary)}
body.dah-tp-site .btn-primary{background:var(--secondary);color:#fff;box-shadow:0 14px 34px rgba(0,103,84,.20)}
body.dah-tp-site .btn-dark{background:var(--primary);color:#fff}
body.dah-tp-site .btn-ghost{background:#fff;border-color:rgba(0,36,81,.14);color:var(--primary)}
body.dah-tp-site .service-page-link{background:var(--primary)!important;color:#fff!important;border-color:var(--primary)!important;min-height:56px;padding-inline:22px 18px;box-shadow:0 14px 28px rgba(0,36,81,.12)}
body.dah-tp-site .service-page-link:after{content:"↗";width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.12);font-size:15px;margin-inline-start:4px}
/* Header */
body.dah-tp-site .header{height:var(--header-h);position:fixed;inset:0 0 auto;z-index:1200;background:transparent;border:0;backdrop-filter:none;padding-top:12px;pointer-events:none}
body.dah-tp-site .header-wrap{pointer-events:auto}
body.dah-tp-site .header-in{height:70px;padding:0 14px 0 18px;background:rgba(255,255,255,.94);border:1px solid rgba(0,36,81,.10);border-radius:20px;box-shadow:0 14px 40px rgba(0,36,81,.10);backdrop-filter:blur(22px);gap:24px}
body.dah-tp-site .brand{width:232px;height:54px;display:flex;align-items:center;flex:none;overflow:hidden}
body.dah-tp-site .brand img{width:100%;height:auto;object-fit:contain}
body.dah-tp-site .nav{margin-inline:auto;display:flex;align-items:center;gap:22px;font-size:15px;font-weight:800;color:#29445A}
body.dah-tp-site .nav>a, body.dah-tp-site .nav-dd-trigger{height:70px;display:flex;align-items:center;padding:0;background:none;border:0;font:inherit;color:inherit;cursor:pointer;position:relative}
body.dah-tp-site .nav>a:after, body.dah-tp-site .nav-dd-trigger:after{content:"";position:absolute;bottom:14px;inset-inline-start:0;width:0;height:2px;background:var(--secondary);transition:.25s}
body.dah-tp-site .nav>a:hover:after, body.dah-tp-site .nav-dd:hover .nav-dd-trigger:after{width:100%}
body.dah-tp-site .nav-dd{position:relative;height:70px;display:flex;align-items:center}
body.dah-tp-site .nav-dd-trigger{gap:7px}
body.dah-tp-site .nav-dd-trigger:before{content:"⌄";font-size:15px;color:var(--secondary);order:2}
body.dah-tp-site .mega-menu{position:absolute;top:62px;inset-inline-start:-180px;width:min(900px,78vw);display:grid;grid-template-columns:1.25fr repeat(3,1fr);gap:28px;padding:26px;border:1px solid rgba(0,36,81,.10);border-radius:22px;background:rgba(255,255,255,.98);box-shadow:0 30px 80px rgba(0,36,81,.16);opacity:0;visibility:hidden;transform:translateY(10px);transition:.22s;pointer-events:none}
body.dah-tp-site .nav-dd:hover .mega-menu{opacity:1;visibility:visible;transform:none;pointer-events:auto}
body.dah-tp-site .mega-menu>div{display:grid;align-content:start;gap:9px}
body.dah-tp-site .mega-menu strong{font:700 15px "El Messiri";color:var(--primary);padding-bottom:8px;border-bottom:1px solid var(--line);margin-bottom:3px}
body.dah-tp-site .mega-menu a{font-size:15px;color:#5D7080;padding:4px 0}
body.dah-tp-site .mega-menu a:hover{color:var(--secondary)}
body.dah-tp-site .mega-intro{background:var(--primary);border-radius:17px;padding:20px!important}
body.dah-tp-site .mega-intro small{color:var(--tertiary);font-size:15px;font-weight:800}
body.dah-tp-site .mega-intro b{color:#fff;font:700 22px/1.55 "El Messiri"}
body.dah-tp-site .header-actions{gap:8px}
body.dah-tp-site .lang{height:42px;min-width:46px;background:var(--neutral);border-color:rgba(0,36,81,.10);color:var(--primary)}
body.dah-tp-site .header-cta{height:46px;padding:0 7px 0 17px;border-radius:999px;background:var(--primary);color:#fff;display:flex;align-items:center;gap:12px;font-size:15px;font-weight:800}
body.dah-tp-site .header-cta i{width:32px;height:32px;border-radius:50%;background:var(--secondary);display:grid;place-items:center;font-style:normal}
body.dah-tp-site .menu-btn{border-color:rgba(0,36,81,.12);background:var(--neutral)}
body.dah-tp-site .mobile-nav{top:86px;inset-inline:18px;border:1px solid rgba(0,36,81,.10);border-radius:20px;background:#fff;box-shadow:0 30px 70px rgba(0,36,81,.18);padding:20px 22px 24px}
body.dah-tp-site .mobile-nav-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:10px;border-bottom:1px solid var(--line)}
body.dah-tp-site .mobile-nav-head span{font:700 18px "El Messiri";color:var(--primary)}
body.dah-tp-site .mobile-nav-head small{font-size:15px;letter-spacing:.12em;color:var(--secondary)}
/* Hero v8 */
body.dah-tp-site .hero.hero-v8{min-height:860px;padding-top:var(--header-h);background:linear-gradient(180deg,#F7FBFC 0%,#EEF6F5 100%);color:var(--primary);overflow:hidden;position:relative;border-bottom:1px solid rgba(0,36,81,.08)}
body.dah-tp-site .hero-v8:before{content:"";position:absolute;width:720px;height:720px;border-radius:50%;border:1px solid rgba(0,103,84,.11);inset-inline-end:-260px;top:35px}
body.dah-tp-site .hero-v8:after{content:"";position:absolute;width:470px;height:470px;border-radius:50%;background:radial-gradient(circle,rgba(201,158,107,.18),rgba(201,158,107,0) 70%);inset-inline-start:-120px;bottom:-170px}
body.dah-tp-site .hero-word{position:absolute;z-index:0;top:86px;inset-inline-start:-12px;font:700 clamp(130px,18vw,260px)/.8 "El Messiri";letter-spacing:-.08em;color:rgba(0,36,81,.035);pointer-events:none;white-space:nowrap}
body.dah-tp-site .hero-v8 .hero-in{min-height:705px;display:grid;grid-template-columns:minmax(0,.95fr) minmax(480px,1.05fr);gap:70px;align-items:center;position:relative;z-index:2;padding:56px 0 78px}
body.dah-tp-site .hero-v8 .hero-copy{padding:0;align-self:center}
body.dah-tp-site .hero-eyebrow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:20px}
body.dah-tp-site .hero-eyebrow>span{width:9px;height:9px;border-radius:50%;background:var(--secondary);box-shadow:0 0 0 6px rgba(0,103,84,.09)}
body.dah-tp-site .hero-eyebrow b{font-size:15px;color:var(--secondary)}
body.dah-tp-site .hero-eyebrow em{font-style:normal;font-size:15px;letter-spacing:.12em;color:#82909A;border-inline-start:1px solid rgba(0,36,81,.16);padding-inline-start:10px}
body.dah-tp-site .hero-v8 h1{font-size:clamp(48px,5.2vw,76px);line-height:1.14;color:var(--primary);max-width:760px;letter-spacing:-.035em}
body.dah-tp-site .hero-v8 h1:after{content:"";display:block;width:84px;height:7px;border-radius:99px;background:linear-gradient(90deg,var(--secondary) 0 58%,var(--tertiary) 58% 100%);margin-top:22px}
body.dah-tp-site .hero-v8 .hero-copy>p{color:#5C6E7B;font-size:17px;line-height:2;max-width:700px;margin-top:22px}
body.dah-tp-site .hero-v8 .hero-actions{display:flex;align-items:center;gap:18px;margin-top:30px}
body.dah-tp-site .hero-text-link{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:800;color:var(--primary);padding:12px 0;border-bottom:1px solid rgba(0,36,81,.26)}
body.dah-tp-site .hero-text-link i{font-style:normal;color:var(--secondary)}
body.dah-tp-site .hero-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:38px;border-top:1px solid rgba(0,36,81,.12);border-bottom:1px solid rgba(0,36,81,.12)}
body.dah-tp-site .hero-proof>div{padding:16px 15px;display:flex;gap:11px;align-items:center}
body.dah-tp-site .hero-proof>div:not(:last-child){border-inline-end:1px solid rgba(0,36,81,.10)}
body.dah-tp-site .hero-proof span{font:700 15px "El Messiri";color:var(--tertiary)}
body.dah-tp-site .hero-proof b{font-size:15px;line-height:1.6;color:#425B6F}
body.dah-tp-site .hero-art{height:630px;position:relative}
body.dah-tp-site .hero-orbit{position:absolute;border:1px solid rgba(0,103,84,.16);border-radius:50%}
body.dah-tp-site .orbit-one{width:520px;height:520px;right:35px;top:48px}
body.dah-tp-site .orbit-two{width:400px;height:400px;right:95px;top:108px;border-style:dashed;opacity:.55}
body.dah-tp-site .hero-photo-main{position:absolute;z-index:2;width:66%;height:78%;inset-inline-end:3%;top:5%;border-radius:190px 190px 34px 34px;overflow:hidden;box-shadow:0 30px 80px rgba(0,36,81,.18)}
html[dir=ltr] body.dah-tp-site .hero-photo-main{border-radius:190px 190px 34px 34px}
body.dah-tp-site .hero-photo-main:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,36,81,.02),rgba(0,36,81,.34))}
body.dah-tp-site .hero-photo-main img{filter:saturate(.78) contrast(1.04)}
body.dah-tp-site .photo-index{position:absolute;z-index:2;right:18px;left:18px;bottom:16px;color:#fff;font-size:15px;font-weight:800;letter-spacing:.1em}
body.dah-tp-site .hero-photo-small{position:absolute;z-index:4;width:33%;height:31%;inset-inline-start:1%;bottom:11%;border:8px solid #F1F8F7;border-radius:28px;overflow:hidden;box-shadow:0 24px 55px rgba(0,36,81,.18)}
body.dah-tp-site .hero-photo-small:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(0,36,81,.52))}
body.dah-tp-site .hero-photo-small span{position:absolute;z-index:2;bottom:12px;right:12px;left:12px;color:#fff;font-size:15px;font-weight:800;letter-spacing:.08em}
body.dah-tp-site .hero-lifecycle-card{position:absolute;z-index:5;width:235px;inset-inline-start:3%;top:8%;padding:18px;border-radius:22px;background:rgba(0,36,81,.94);color:#fff;box-shadow:0 24px 55px rgba(0,36,81,.20);backdrop-filter:blur(12px)}
body.dah-tp-site .lc-head{display:flex;justify-content:space-between;gap:10px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.14)}
body.dah-tp-site .lc-head small{font-size:15px;color:#C8D7E1}
body.dah-tp-site .lc-head b{font:700 15px "El Messiri";color:var(--tertiary)}
body.dah-tp-site .lc-line{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.08)}
body.dah-tp-site .lc-line:last-child{border:0}
body.dah-tp-site .lc-line span{font-size:15px;color:var(--tertiary)}
body.dah-tp-site .lc-line b{font-size:15px;letter-spacing:.03em}
body.dah-tp-site .hero-brand-card{position:absolute;z-index:6;inset-inline-end:0;bottom:4%;width:290px;display:grid;grid-template-columns:62px 1fr;gap:14px;align-items:center;padding:14px 16px;border-radius:20px;background:#fff;border:1px solid rgba(0,36,81,.10);box-shadow:0 18px 50px rgba(0,36,81,.14)}
body.dah-tp-site .hero-brand-card>span{width:62px;height:62px;border-radius:17px;background:linear-gradient(145deg,var(--secondary),#005043);color:#fff;display:grid;place-items:center;font:700 19px "El Messiri"}
body.dah-tp-site .hero-brand-card b{display:block;font:700 15px "El Messiri";color:var(--primary)}
body.dah-tp-site .hero-brand-card small{display:block;font-size:15px;line-height:1.7;color:#6D7D88;margin-top:3px}
body.dah-tp-site .hero-ribbon{position:relative;z-index:4;border-top:1px solid rgba(0,36,81,.08);background:#fff}
body.dah-tp-site .hero-ribbon-in{min-height:66px;display:flex;align-items:center;justify-content:center;gap:20px;overflow:hidden}
body.dah-tp-site .hero-ribbon span{font-size:15px;font-weight:800;color:#5E7080;white-space:nowrap}
body.dah-tp-site .hero-ribbon i{width:5px;height:5px;border-radius:50%;background:var(--tertiary);flex:none}
/* Sticky capability nav */
body.dah-tp-site .jump-shell{height:var(--jump-h);position:sticky;top:var(--header-h);z-index:1100}
body.dah-tp-site .jump{height:var(--jump-h);background:rgba(0,36,81,.96);border-bottom:0;box-shadow:0 12px 35px rgba(0,36,81,.13);backdrop-filter:blur(18px)}
body.dah-tp-site .jump-label{color:#fff}
body.dah-tp-site .jump a{color:rgba(255,255,255,.68);border:1px solid rgba(255,255,255,.08)}
body.dah-tp-site .jump a:hover, body.dah-tp-site .jump a.active{background:#fff;color:var(--primary);box-shadow:none;border-color:#fff}
body.dah-tp-site .jump a.active:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--secondary);margin-inline-end:7px}
/* Brand consistency across major dark scenes */
body.dah-tp-site .permit{background:var(--primary)}
body.dah-tp-site .engineering{background:#001F46}
body.dah-tp-site .fire{background:#00172F}
body.dah-tp-site .why{background:var(--primary)!important}
body.dah-tp-site .footer{background:#001A3B!important}
body.dah-tp-site .eng-foot{background:var(--tertiary)}
body.dah-tp-site .eng-foot b{color:var(--primary)}
@media (max-width:1120px){body.dah-tp-site .nav{display:none}
body.dah-tp-site .menu-btn{display:flex}
body.dah-tp-site .brand{width:210px}
body.dah-tp-site .hero-v8 .hero-in{grid-template-columns:1fr 470px;gap:34px}
body.dah-tp-site .hero-v8 h1{font-size:56px}}
@media (max-width:900px){:root{--header-h:86px;--jump-h:58px}
body.dah-tp-site .header{padding-top:9px}
body.dah-tp-site .header-in{height:66px;border-radius:17px}
body.dah-tp-site .brand{width:185px}
body.dah-tp-site .header-cta{display:none}
body.dah-tp-site .mobile-nav{top:78px}
body.dah-tp-site .hero.hero-v8{min-height:auto}
body.dah-tp-site .hero-v8 .hero-in{grid-template-columns:1fr;padding:48px 0 58px;gap:46px}
body.dah-tp-site .hero-v8 .hero-copy{max-width:760px}
body.dah-tp-site .hero-art{height:570px;max-width:660px;width:100%;margin-inline:auto}
body.dah-tp-site .hero-word{font-size:150px;top:90px}
body.dah-tp-site .hero-proof{max-width:650px}
body.dah-tp-site .hero-ribbon-in{justify-content:flex-start;overflow-x:auto}
body.dah-tp-site .mega-menu{display:none}}
@media (max-width:640px){:root{--header-h:78px;--jump-h:56px}
body.dah-tp-site .wrap{width:min(var(--max),calc(100% - 30px))}
body.dah-tp-site .header{padding-top:7px}
body.dah-tp-site .header-in{height:60px;padding:0 9px 0 12px;border-radius:15px}
body.dah-tp-site .brand{width:155px;height:46px}
body.dah-tp-site .lang{height:38px;min-width:42px}
body.dah-tp-site .menu-btn{width:40px;height:40px;border-radius:12px}
body.dah-tp-site .mobile-nav{top:70px;inset-inline:12px}
body.dah-tp-site .hero-v8 .hero-in{padding:42px 0 48px;gap:34px}
body.dah-tp-site .hero-v8 h1{font-size:clamp(38px,11vw,48px);line-height:1.18}
body.dah-tp-site .hero-v8 .hero-copy>p{font-size:16px;line-height:1.9}
body.dah-tp-site .hero-eyebrow em{width:100%;border:0;padding:0;margin-top:2px}
body.dah-tp-site .hero-v8 .hero-actions{display:grid;grid-template-columns:1fr;gap:10px}
body.dah-tp-site .hero-v8 .hero-actions .btn{width:100%}
body.dah-tp-site .hero-text-link{justify-content:center}
body.dah-tp-site .hero-proof{grid-template-columns:1fr;margin-top:28px}
body.dah-tp-site .hero-proof>div{padding:12px 2px}
body.dah-tp-site .hero-proof>div:not(:last-child){border-inline-end:0;border-bottom:1px solid rgba(0,36,81,.10)}
body.dah-tp-site .hero-art{height:510px}
body.dah-tp-site .orbit-one{width:430px;height:430px;right:-60px}
body.dah-tp-site .orbit-two{width:320px;height:320px;right:-5px}
body.dah-tp-site .hero-photo-main{width:72%;height:70%;top:8%;border-radius:150px 150px 28px 28px}
body.dah-tp-site .hero-photo-small{width:40%;height:29%;bottom:7%;border-width:6px}
body.dah-tp-site .hero-lifecycle-card{width:190px;top:2%;inset-inline-start:0;padding:14px}
body.dah-tp-site .lc-line{padding:8px 0}
body.dah-tp-site .hero-brand-card{width:245px;bottom:0;padding:10px;grid-template-columns:50px 1fr}
body.dah-tp-site .hero-brand-card>span{width:50px;height:50px}
body.dah-tp-site .hero-ribbon-in{gap:13px;min-height:56px}
body.dah-tp-site .jump-label{display:none}
body.dah-tp-site .jump-in{gap:6px}
body.dah-tp-site .jump a{padding:8px 12px;font-size:15px}
body.dah-tp-site .service-actions{display:grid!important;grid-template-columns:1fr!important}
body.dah-tp-site .service-actions .btn, body.dah-tp-site .service-page-link{width:100%!important}
body.dah-tp-site .section{padding:78px 0}}
/* ===== V9 REFINEMENT: PREMIUM QUICK NAV / LANGUAGE / FOOTER ===== */
:root{--jump-h:76px}
html{scroll-padding-top:calc(var(--header-h) + var(--jump-h) + 26px)}
body.dah-tp-site [id]{scroll-margin-top:calc(var(--header-h) + var(--jump-h) + 26px)}
/* refined header state */
body.dah-tp-site .header{transition:padding .25s ease,background .25s ease}
body.dah-tp-site .header-in{transition:height .25s ease,border-radius .25s ease,box-shadow .25s ease,background .25s ease}
body.dah-tp-site.page-scrolled .header{padding-top:7px}
body.dah-tp-site .header-in{border-color:rgba(0,36,81,.09)}
body.dah-tp-site.page-scrolled .header-in{height:64px;background:rgba(255,255,255,.975);border-radius:17px;box-shadow:0 18px 50px rgba(0,36,81,.13)}
body.dah-tp-site.page-scrolled .nav>a, body.dah-tp-site.page-scrolled .nav-dd, body.dah-tp-site.page-scrolled .nav-dd-trigger{height:64px}
/* premium language switch */
body.dah-tp-site .lang-switch{height:48px;min-width:134px;border:1px solid rgba(0,36,81,.11);border-radius:16px;background:linear-gradient(180deg,#fff,#F6FAFB);display:grid;grid-template-columns:30px 1fr 22px;align-items:center;gap:8px;padding:0 9px;cursor:pointer;color:var(--primary);box-shadow:inset 0 1px 0 rgba(255,255,255,.8);transition:.22s ease}
body.dah-tp-site .lang-switch:hover{border-color:rgba(0,103,84,.26);box-shadow:0 10px 24px rgba(0,36,81,.08);transform:translateY(-1px)}
body.dah-tp-site .lang-switch-icon{width:30px;height:30px;border-radius:10px;background:rgba(0,103,84,.09);display:grid;place-items:center;color:var(--secondary);font-size:18px;font-weight:800}
body.dah-tp-site .lang-switch-copy{display:grid;text-align:start;line-height:1.05}
body.dah-tp-site .lang-switch-copy small{font-size:15px;color:#85939D;font-weight:700;margin-bottom:4px}
body.dah-tp-site .lang-switch-copy strong{font:700 15px "El Messiri";color:var(--primary);white-space:nowrap}
body.dah-tp-site .lang-switch-arrow{font-size:15px;color:var(--tertiary);font-weight:800}
/* premium sticky quick navigation */
body.dah-tp-site .jump-shell{height:var(--jump-h);position:sticky;top:var(--header-h);z-index:1090;background:transparent;padding:8px 0;transition:.25s ease}
body.dah-tp-site .jump{height:auto;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;border:0!important}
body.dah-tp-site .jump-in{height:60px;padding:7px 9px;border:1px solid rgba(0,36,81,.10);border-radius:19px;background:rgba(255,255,255,.96);box-shadow:0 14px 42px rgba(0,36,81,.10);backdrop-filter:blur(20px);gap:6px;position:relative;transition:.28s ease;scroll-padding-inline:175px}
body.dah-tp-site .jump-label{height:46px;min-width:166px;display:grid;grid-template-columns:36px 1fr;gap:9px;align-items:center;padding:0 9px;border-inline-end:1px solid rgba(0,36,81,.10);flex:none;color:var(--primary)}
body.dah-tp-site .jump-label-icon{width:34px;height:34px;border-radius:11px;background:linear-gradient(145deg,var(--primary),#00366E);color:#fff;display:grid;place-items:center;font-size:18px;box-shadow:0 7px 18px rgba(0,36,81,.16)}
body.dah-tp-site .jump-label-copy{display:grid;line-height:1.05}
body.dah-tp-site .jump-label-copy small{font-size:15px;color:#87949D;font-weight:700;margin-bottom:5px}
body.dah-tp-site .jump-label-copy strong{font:700 15px "El Messiri";color:var(--primary);white-space:nowrap}
body.dah-tp-site .jump a{height:42px;display:flex;align-items:center;gap:7px;padding:0 14px;border:1px solid transparent!important;border-radius:13px;color:#607381!important;background:transparent!important;font-size:15px;font-weight:800;transition:.2s ease;position:relative}
body.dah-tp-site .jump a:hover{background:#F2F8F6!important;color:var(--secondary)!important}
body.dah-tp-site .jump a.active{background:var(--primary)!important;color:#fff!important;box-shadow:0 10px 22px rgba(0,36,81,.16)!important;padding-inline:15px 17px}
body.dah-tp-site .jump a.active:before{content:""!important;width:7px!important;height:7px!important;border-radius:50%!important;background:var(--tertiary)!important;margin-inline-end:0!important;box-shadow:0 0 0 4px rgba(201,158,107,.13)}
body.dah-tp-site .jump-fade{display:none}
body.dah-tp-site.jump-stuck .jump-shell{padding:0;background:rgba(245,250,251,.86);box-shadow:0 1px 0 rgba(0,36,81,.08);backdrop-filter:blur(18px)}
body.dah-tp-site.jump-stuck .jump-in{height:var(--jump-h);border-radius:0;border-inline:0;background:rgba(0,36,81,.975);border-color:transparent;box-shadow:0 16px 42px rgba(0,36,81,.18);padding-block:9px}
body.dah-tp-site.jump-stuck .jump-label{border-color:rgba(255,255,255,.12);color:#fff}
body.dah-tp-site.jump-stuck .jump-label-icon{background:var(--secondary);box-shadow:none}
body.dah-tp-site.jump-stuck .jump-label-copy small{color:rgba(255,255,255,.50)}
body.dah-tp-site.jump-stuck .jump-label-copy strong{color:#fff}
body.dah-tp-site.jump-stuck .jump a{color:rgba(255,255,255,.68)!important}
body.dah-tp-site.jump-stuck .jump a:hover{background:rgba(255,255,255,.08)!important;color:#fff!important}
body.dah-tp-site.jump-stuck .jump a.active{background:#fff!important;color:var(--primary)!important;box-shadow:none!important}
body.dah-tp-site.jump-stuck .jump a.active:before{background:var(--secondary)!important;box-shadow:0 0 0 4px rgba(0,103,84,.11)}
/* more buttons for future service pages */
body.dah-tp-site .service-more{position:relative;overflow:hidden;padding-inline:22px 14px!important}
body.dah-tp-site .service-more:after{content:"←";width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.13);display:grid;place-items:center;margin-inline-start:8px;font-size:15px;transition:.2s}
body.dah-tp-site .service-more:hover:after{transform:translateX(-3px)}
html[dir=ltr] body.dah-tp-site .service-more:after{content:"→"}
html[dir=ltr] body.dah-tp-site .service-more:hover:after{transform:translateX(3px)}
/* Footer v9 */
body.dah-tp-site .footer.footer-v9{background:#001A3B!important;color:#fff;padding:0 0 24px;position:relative;overflow:hidden}
body.dah-tp-site .footer-v9:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;border:1px solid rgba(201,158,107,.11);inset-inline-end:-220px;bottom:-250px}
body.dah-tp-site .footer-topline{height:5px;display:grid;grid-template-columns:1.2fr .85fr .55fr}
body.dah-tp-site .footer-topline i:nth-child(1){background:var(--primary)}
body.dah-tp-site .footer-topline i:nth-child(2){background:var(--secondary)}
body.dah-tp-site .footer-topline i:nth-child(3){background:var(--tertiary)}
body.dah-tp-site .footer-cta-panel{margin-top:54px;padding:34px 38px;border-radius:28px;background:linear-gradient(120deg,rgba(255,255,255,.08),rgba(255,255,255,.035));border:1px solid rgba(255,255,255,.12);display:grid;grid-template-columns:1.2fr auto;gap:46px;align-items:center;position:relative;overflow:hidden}
body.dah-tp-site .footer-cta-panel:after{content:"";position:absolute;width:250px;height:250px;border-radius:50%;background:rgba(0,103,84,.24);filter:blur(80px);inset-inline-end:-60px;top:-110px}
body.dah-tp-site .footer-kicker{font-size:15px;font-weight:800;color:var(--tertiary);display:block;margin-bottom:10px}
body.dah-tp-site .footer-cta-copy h2{color:#fff;font-size:clamp(28px,3vw,42px);max-width:740px}
body.dah-tp-site .footer-cta-copy p{color:#A9BAC6;font-size:15px;max-width:730px;margin-top:10px}
body.dah-tp-site .footer-cta-actions{display:flex;align-items:center;gap:10px;position:relative;z-index:1}
body.dah-tp-site .footer-primary{background:var(--secondary)!important;color:#fff!important}
body.dah-tp-site .footer-phone{height:54px;display:flex;align-items:center;gap:12px;padding:0 8px 0 17px;border-radius:999px;border:1px solid rgba(255,255,255,.15);color:#fff;font-size:15px}
body.dah-tp-site .footer-phone i{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.08);font-style:normal;color:var(--tertiary)}
body.dah-tp-site .footer-main-v9{display:grid;grid-template-columns:1.45fr .8fr .75fr 1fr;gap:54px;padding:64px 0 48px;border-bottom:1px solid rgba(255,255,255,.10);position:relative;z-index:1}
body.dah-tp-site .footer-logo{display:block;width:245px;height:58px;background:#fff;border-radius:14px;padding:8px 12px}
body.dah-tp-site .footer-logo img{width:100%;height:100%;object-fit:contain}
body.dah-tp-site .footer-brand-v9>p{font-size:15px;line-height:2;color:#A4B5C1;max-width:410px;margin-top:19px}
body.dah-tp-site .footer-promise{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}
body.dah-tp-site .footer-promise span{font-size:15px;font-weight:800;color:#D8E2E8;border:1px solid rgba(255,255,255,.11);padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.035)}
body.dah-tp-site .footer-v9 h4{font:700 17px "El Messiri";color:#fff;margin:3px 0 17px}
body.dah-tp-site .footer-v9 .footer-links{display:grid;gap:11px}
body.dah-tp-site .footer-v9 .footer-links a{font-size:15px;color:#98ACB8;display:flex;align-items:center;gap:7px;transition:.2s}
body.dah-tp-site .footer-v9 .footer-links a:before{content:"";width:5px;height:5px;border-radius:50%;background:rgba(201,158,107,.65);flex:none}
body.dah-tp-site .footer-v9 .footer-links a:hover{color:#fff;transform:translateX(-3px)}
html[dir=ltr] body.dah-tp-site .footer-v9 .footer-links a:hover{transform:translateX(3px)}
body.dah-tp-site .footer-contact-v9{padding:22px;border:1px solid rgba(255,255,255,.11);border-radius:20px;background:rgba(255,255,255,.035)}
body.dah-tp-site .footer-contact-v9 h4{font-size:20px;margin-bottom:8px}
body.dah-tp-site .footer-contact-v9>p{font-size:15px;color:#95A8B5;line-height:1.9}
body.dah-tp-site .footer-contact-lines{display:grid;gap:8px;margin-top:17px;padding-top:16px;border-top:1px solid rgba(255,255,255,.08)}
body.dah-tp-site .footer-contact-lines a{font-size:15px;color:#D5E0E6}
body.dah-tp-site .footer-contact-lines a:hover{color:var(--tertiary)}
body.dah-tp-site .footer-bottom-v9{min-height:58px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;color:#718896;font-size:15px;position:relative;z-index:1}
body.dah-tp-site .footer-bottom-v9>div{display:flex;gap:18px}
body.dah-tp-site .footer-bottom-v9>div a{color:#8EA1AD}
body.dah-tp-site .footer-bottom-v9>span:last-child{text-align:end}
@media (max-width:1120px){body.dah-tp-site .lang-switch{min-width:122px}
body.dah-tp-site .footer-main-v9{grid-template-columns:1.35fr 1fr 1fr}
body.dah-tp-site .footer-contact-v9{grid-column:2/4}
body.dah-tp-site .footer-cta-panel{grid-template-columns:1fr}
body.dah-tp-site .footer-cta-actions{justify-content:flex-start}}
@media (max-width:900px){:root{--jump-h:70px}
body.dah-tp-site .lang-switch{min-width:116px;height:44px}
body.dah-tp-site .jump-shell{padding:6px 0}
body.dah-tp-site .jump-in{height:58px}
body.dah-tp-site .jump-label{min-width:154px}
body.dah-tp-site .footer-main-v9{grid-template-columns:1fr 1fr;gap:36px}
body.dah-tp-site .footer-brand-v9{grid-column:1/-1}
body.dah-tp-site .footer-contact-v9{grid-column:auto}
body.dah-tp-site .footer-bottom-v9{grid-template-columns:1fr auto}
body.dah-tp-site .footer-bottom-v9>span:last-child{grid-column:1/-1;text-align:start}
body.dah-tp-site .footer-cta-panel{padding:28px}}
@media (max-width:640px){:root{--jump-h:64px}
body.dah-tp-site .header-actions{gap:6px}
body.dah-tp-site .lang-switch{min-width:48px;width:48px;height:40px;grid-template-columns:1fr;padding:0}
body.dah-tp-site .lang-switch-copy, body.dah-tp-site .lang-switch-arrow{display:none}
body.dah-tp-site .lang-switch-icon{margin:auto;width:30px;height:30px}
body.dah-tp-site .jump-shell{padding:5px 0}
body.dah-tp-site .jump-in{height:54px;margin-inline:-15px;padding-inline:15px;border-radius:0;border-inline:0;box-shadow:0 8px 25px rgba(0,36,81,.08);scroll-padding-inline:15px}
body.dah-tp-site .jump-label{display:none}
body.dah-tp-site .jump a{height:38px;padding:0 12px;font-size:15px}
body.dah-tp-site .jump a.active{padding-inline:13px 15px}
body.dah-tp-site .footer-cta-panel{margin-top:36px;padding:24px 20px;border-radius:22px}
body.dah-tp-site .footer-cta-actions{display:grid;width:100%}
body.dah-tp-site .footer-cta-actions .btn, body.dah-tp-site .footer-phone{width:100%;justify-content:center}
body.dah-tp-site .footer-main-v9{grid-template-columns:1fr;padding:45px 0 34px;gap:32px}
body.dah-tp-site .footer-brand-v9, body.dah-tp-site .footer-contact-v9{grid-column:auto}
body.dah-tp-site .footer-logo{width:215px}
body.dah-tp-site .footer-bottom-v9{grid-template-columns:1fr;gap:10px;padding-top:16px}
body.dah-tp-site .footer-bottom-v9>div{order:3;flex-wrap:wrap}
body.dah-tp-site .footer-bottom-v9>span:last-child{grid-column:auto}}
/* ===== V10 POLISH: GLASS QUICK NAV / SIMPLE LANGUAGE / HERO LIFECYCLE / FOOTER BRIDGE ===== */
:root{--jump-h:82px}
html{scroll-padding-top:calc(var(--header-h) + var(--jump-h) + 24px)}
body.dah-tp-site [id]{scroll-margin-top:calc(var(--header-h) + var(--jump-h) + 24px)}
/* Simple, restrained language switch */
body.dah-tp-site .lang-switch{height:44px;min-width:108px;padding:0 14px;border-radius:999px;border:1px solid rgba(0,36,81,.11);background:rgba(255,255,255,.76);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:center;gap:8px;color:var(--primary);box-shadow:0 8px 24px rgba(0,36,81,.06),inset 0 1px 0 rgba(255,255,255,.85);transition:.2s ease}
body.dah-tp-site .lang-switch:hover{transform:translateY(-1px);border-color:rgba(0,103,84,.26);background:rgba(255,255,255,.92);box-shadow:0 12px 28px rgba(0,36,81,.09)}
body.dah-tp-site .lang-switch-icon{width:20px;height:20px;border:1px solid rgba(0,103,84,.28);border-radius:50%;background:transparent;color:var(--secondary);display:grid;place-items:center;font-size:15px;line-height:1;font-weight:800}
body.dah-tp-site .lang-switch strong{font:700 15px/1 "Almarai";white-space:nowrap;color:var(--primary)}
body.dah-tp-site.page-scrolled .lang-switch{background:rgba(249,252,252,.68);border-color:rgba(0,36,81,.10)}
/* Floating glass quick navigation, transparent on both sides */
body.dah-tp-site .jump-shell{height:var(--jump-h);position:sticky;top:calc(var(--header-h) + 6px);z-index:1090;background:transparent!important;padding:9px 0;pointer-events:none}
body.dah-tp-site .jump{height:auto!important;background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;pointer-events:auto}
body.dah-tp-site .jump-in{height:64px;padding:8px 10px;border-radius:22px;border:1px solid rgba(255,255,255,.78);background:linear-gradient(135deg,rgba(251,253,253,.78),rgba(244,249,249,.68));box-shadow:0 16px 44px rgba(0,36,81,.10),inset 0 1px 0 rgba(255,255,255,.86);backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%);gap:7px;position:relative;overflow-x:auto;transition:background .25s ease,box-shadow .25s ease,border-color .25s ease,transform .25s ease;scroll-padding-inline:170px}
body.dah-tp-site.page-scrolled .jump-in{background:linear-gradient(135deg,rgba(247,251,251,.74),rgba(238,246,246,.64));border-color:rgba(255,255,255,.86);box-shadow:0 22px 58px rgba(0,36,81,.13),inset 0 1px 0 rgba(255,255,255,.92)}
body.dah-tp-site .jump-label{height:46px;min-width:168px;padding:0 10px;display:grid;grid-template-columns:34px 1fr;gap:9px;align-items:center;border-inline-end:1px solid rgba(0,36,81,.09);color:var(--primary)}
body.dah-tp-site .jump-label-icon{width:32px;height:32px;border-radius:50%;background:rgba(0,103,84,.09);border:1px solid rgba(0,103,84,.12);color:var(--secondary);display:grid;place-items:center;font-size:16px;box-shadow:none}
body.dah-tp-site .jump-label-copy small{font-size:15px!important;color:#71848f;font-weight:700;margin-bottom:3px}
body.dah-tp-site .jump-label-copy strong{font:700 15px/1.15 "El Messiri";color:var(--primary)}
body.dah-tp-site .jump a{height:44px;padding:0 14px!important;border-radius:15px!important;border:1px solid transparent!important;background:rgba(255,255,255,.28)!important;color:#5c707c!important;font-size:15px!important;font-weight:800;box-shadow:none!important}
body.dah-tp-site .jump a:hover{background:rgba(255,255,255,.76)!important;color:var(--primary)!important;border-color:rgba(0,36,81,.08)!important}
body.dah-tp-site .jump a.active{background:var(--primary)!important;color:#fff!important;border-color:var(--primary)!important;box-shadow:0 8px 20px rgba(0,36,81,.18)!important}
body.dah-tp-site .jump a.active:before{background:var(--tertiary)!important}
body.dah-tp-site .jump-fade{position:sticky;inset-inline-end:0;width:28px;height:46px;align-self:center;flex:none;background:linear-gradient(to left,rgba(246,250,250,.88),rgba(246,250,250,0));pointer-events:none}
html[dir=ltr] body.dah-tp-site .jump-fade{background:linear-gradient(to right,rgba(246,250,250,.88),rgba(246,250,250,0))}
/* Hero lifecycle becomes a compact premium command panel */
body.dah-tp-site .hero-lifecycle-card{width:270px!important;inset-inline-start:1.5%!important;top:6%!important;padding:16px!important;border-radius:24px!important;background:linear-gradient(150deg,rgba(0,36,81,.96),rgba(0,24,57,.92))!important;border:1px solid rgba(255,255,255,.12);box-shadow:0 28px 66px rgba(0,36,81,.24)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);display:block!important;overflow:hidden}
body.dah-tp-site .hero-lifecycle-card:before{content:"";position:absolute;width:130px;height:130px;border-radius:50%;background:rgba(0,103,84,.22);filter:blur(45px);inset-inline-end:-55px;top:-55px;pointer-events:none}
body.dah-tp-site .lc-head{position:relative;z-index:1;display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:16px;padding:0 0 14px!important;border-bottom:1px solid rgba(255,255,255,.13)!important}
body.dah-tp-site .lc-head>div{display:grid;gap:4px}
body.dah-tp-site .lc-head small{font-size:15px!important;color:#b8cad5!important;font-weight:700}
body.dah-tp-site .lc-head strong{font:700 15px/1.25 "El Messiri";color:#fff}
body.dah-tp-site .lc-head>b{font:700 15px/1 "El Messiri";color:var(--tertiary)!important;padding-top:3px}
body.dah-tp-site .lc-flow{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
body.dah-tp-site .lc-line{min-height:70px!important;padding:11px!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:16px;background:rgba(255,255,255,.055);display:grid!important;grid-template-columns:auto 1fr!important;grid-template-rows:auto 1fr;align-items:start!important;justify-content:initial!important;gap:5px 9px;position:relative;overflow:hidden}
body.dah-tp-site .lc-line span{font-size:15px!important;color:var(--tertiary)!important;font-weight:800;line-height:1}
body.dah-tp-site .lc-line b{font:700 15px/1.1 "El Messiri"!important;color:#fff;align-self:center;grid-column:1/-1;letter-spacing:0!important}
body.dah-tp-site .lc-line i{position:absolute;width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.10);inset-inline-end:-14px;bottom:-14px}
body.dah-tp-site .lc-line:nth-child(2), body.dah-tp-site .lc-line:nth-child(4){background:rgba(0,103,84,.12)}
/* Official logo replaces the temporary TP tile */
body.dah-tp-site .hero-brand-card{width:330px!important;grid-template-columns:118px 1fr!important;gap:15px!important;padding:13px 16px!important;border-radius:22px!important;background:rgba(255,255,255,.88)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.92)!important;box-shadow:0 20px 56px rgba(0,36,81,.15)!important}
body.dah-tp-site .hero-brand-logo{height:66px;display:flex;align-items:center;justify-content:center;padding:9px 8px;border-radius:15px;background:#fff;border:1px solid rgba(0,36,81,.07)}
body.dah-tp-site .hero-brand-logo img{width:100%;height:auto;max-height:45px;object-fit:contain}
body.dah-tp-site .hero-brand-card b{font-size:16px!important}
body.dah-tp-site .hero-brand-card small{font-size:15px!important;line-height:1.65!important;margin-top:4px!important}
/* Elegant bridge from the last conversion section into the footer */
body.dah-tp-site .footer-bridge{height:104px;position:relative;overflow:hidden;background:linear-gradient(180deg,var(--primary) 0 32%,#f5fafb 32% 64%,#001a3b 64% 100%)}
body.dah-tp-site .footer-bridge:before{content:"";position:absolute;left:-7%;right:-7%;top:13px;height:58px;border-radius:50% 50% 46% 54%/70% 70% 30% 30%;background:#f5fafb;box-shadow:0 -1px 0 rgba(255,255,255,.16)}
body.dah-tp-site .footer-bridge:after{content:"";position:absolute;left:-6%;right:-6%;bottom:-44px;height:82px;border-radius:50% 50% 0 0/100% 100% 0 0;background:#001a3b}
body.dah-tp-site .footer-bridge-line{position:absolute;z-index:3;left:50%;top:43px;transform:translateX(-50%);width:min(680px,68vw);display:grid;grid-template-columns:1fr 10px 1fr;align-items:center;gap:12px}
body.dah-tp-site .footer-bridge-line span{height:1px;background:linear-gradient(90deg,transparent,rgba(201,158,107,.66))}
body.dah-tp-site .footer-bridge-line span:last-child{background:linear-gradient(90deg,rgba(201,158,107,.66),transparent)}
body.dah-tp-site .footer-bridge-line i{width:10px;height:10px;border-radius:50%;background:var(--tertiary);box-shadow:0 0 0 6px rgba(201,158,107,.12)}
body.dah-tp-site .footer{padding-top:56px!important}
/* Enforce minimum readable typography */
body.dah-tp-site small{font-size:15px!important}
@media (max-width:900px){:root{--jump-h:74px}
body.dah-tp-site .jump-shell{top:calc(var(--header-h) + 3px);padding:7px 0}
body.dah-tp-site .jump-in{height:58px;border-radius:19px;margin-inline:0;padding:7px 8px;scroll-padding-inline:16px}
body.dah-tp-site .jump-label{display:none!important}
body.dah-tp-site .jump a{height:42px;padding:0 13px!important;font-size:15px!important}
body.dah-tp-site .hero-lifecycle-card{width:230px!important;top:1%!important;padding:13px!important}
body.dah-tp-site .lc-flow{gap:6px}
body.dah-tp-site .lc-line{min-height:62px!important;padding:9px!important}
body.dah-tp-site .lc-line b{font-size:15px!important}
body.dah-tp-site .hero-brand-card{width:280px!important;grid-template-columns:100px 1fr!important;bottom:0!important}
body.dah-tp-site .hero-brand-logo{height:58px}
body.dah-tp-site .footer-bridge{height:88px}
body.dah-tp-site .footer-bridge-line{top:37px;width:76vw}}
@media (max-width:640px){:root{--jump-h:68px}
body.dah-tp-site .lang-switch{height:40px;min-width:92px;padding:0 11px;gap:7px}
body.dah-tp-site .lang-switch strong{font-size:15px}
body.dah-tp-site .lang-switch-icon{width:18px;height:18px;font-size:15px}
body.dah-tp-site .jump-shell{padding:5px 0}
body.dah-tp-site .jump-in{height:56px;border-radius:17px;margin-inline:0;padding:7px 7px;box-shadow:0 12px 34px rgba(0,36,81,.11)}
body.dah-tp-site .jump a{height:40px;padding:0 12px!important}
body.dah-tp-site .hero-lifecycle-card{width:210px!important;inset-inline-start:0!important;top:0!important;border-radius:20px!important}
body.dah-tp-site .lc-head strong{font-size:15px}
body.dah-tp-site .lc-flow{grid-template-columns:1fr 1fr}
body.dah-tp-site .lc-line{min-height:58px!important}
body.dah-tp-site .lc-line b{font-size:15px!important}
body.dah-tp-site .hero-brand-card{width:265px!important;grid-template-columns:94px 1fr!important;padding:10px 12px!important;border-radius:18px!important}
body.dah-tp-site .hero-brand-logo{height:52px;padding:7px}
body.dah-tp-site .hero-brand-card b{font-size:15px!important}
body.dah-tp-site .hero-brand-card small{font-size:15px!important;line-height:1.55!important}
body.dah-tp-site .footer-bridge{height:76px}
body.dah-tp-site .footer-bridge:before{top:10px;height:48px}
body.dah-tp-site .footer-bridge-line{top:31px;width:82vw}
body.dah-tp-site .footer{padding-top:46px!important}}
/* ===== V11 — SCROLL STABILITY / ICON RELIABILITY / HERO MOTION / BRAND FOOTER TRANSITION ===== */
/* Keep quick navigation visually IDENTICAL before and after it sticks */
body.dah-tp-site .jump-shell, body.dah-tp-site.jump-stuck .jump-shell, body.dah-tp-site.page-scrolled .jump-shell{
  height:var(--jump-h)!important;
  top:calc(var(--header-h) + 6px)!important;
  padding:9px 0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.dah-tp-site .jump, body.dah-tp-site.jump-stuck .jump, body.dah-tp-site.page-scrolled .jump{
  height:auto!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.dah-tp-site .jump-in, body.dah-tp-site.jump-stuck .jump-in, body.dah-tp-site.page-scrolled .jump-in{
  height:64px!important;
  padding:8px 10px!important;
  border-radius:22px!important;
  border:1px solid rgba(255,255,255,.80)!important;
  background:linear-gradient(135deg,rgba(251,253,253,.82),rgba(242,248,249,.72))!important;
  box-shadow:0 16px 44px rgba(0,36,81,.10),inset 0 1px 0 rgba(255,255,255,.90)!important;
  backdrop-filter:blur(24px) saturate(145%)!important;
  -webkit-backdrop-filter:blur(24px) saturate(145%)!important;
  overflow-x:auto!important;
  border-inline:1px solid rgba(255,255,255,.80)!important;
}
body.dah-tp-site .jump-label, body.dah-tp-site.jump-stuck .jump-label{
  color:var(--primary)!important;
  border-inline-end:1px solid rgba(0,36,81,.09)!important;
}
body.dah-tp-site .jump-label-icon, body.dah-tp-site.jump-stuck .jump-label-icon{
  background:rgba(0,103,84,.09)!important;
  border:1px solid rgba(0,103,84,.12)!important;
  color:var(--secondary)!important;
  box-shadow:none!important;
}
body.dah-tp-site .jump-label-copy small, body.dah-tp-site.jump-stuck .jump-label-copy small{color:#71848f!important}
body.dah-tp-site .jump-label-copy strong, body.dah-tp-site.jump-stuck .jump-label-copy strong{color:var(--primary)!important}
body.dah-tp-site .jump a, body.dah-tp-site.jump-stuck .jump a{
  height:44px!important;
  color:#5c707c!important;
  background:rgba(255,255,255,.28)!important;
  border:1px solid transparent!important;
  border-radius:15px!important;
  box-shadow:none!important;
}
body.dah-tp-site .jump a:hover, body.dah-tp-site.jump-stuck .jump a:hover{
  color:var(--primary)!important;
  background:rgba(255,255,255,.78)!important;
  border-color:rgba(0,36,81,.08)!important;
}
body.dah-tp-site .jump a.active, body.dah-tp-site.jump-stuck .jump a.active{
  color:#fff!important;
  background:var(--primary)!important;
  border-color:var(--primary)!important;
  box-shadow:0 8px 20px rgba(0,36,81,.18)!important;
}
body.dah-tp-site .jump a.active:before, body.dah-tp-site.jump-stuck .jump a.active:before{
  background:var(--tertiary)!important;
  box-shadow:0 0 0 4px rgba(201,158,107,.13)!important;
}
/* Language switch: simple, readable and icon-led */
body.dah-tp-site .lang-switch, body.dah-tp-site.page-scrolled .lang-switch{
  min-width:112px;
  height:44px;
  padding:0 13px 0 11px;
  gap:9px;
  border-radius:999px;
  border:1px solid rgba(0,36,81,.11);
  background:rgba(255,255,255,.86);
  color:var(--primary);
  box-shadow:0 8px 24px rgba(0,36,81,.055),inset 0 1px 0 rgba(255,255,255,.95);
}
body.dah-tp-site .lang-switch-icon{
  width:29px!important;
  height:29px!important;
  flex:0 0 29px;
  border-radius:50%!important;
  border:1px solid rgba(0,103,84,.17)!important;
  background:rgba(0,103,84,.075)!important;
  color:var(--secondary)!important;
  display:grid!important;
  place-items:center!important;
}
body.dah-tp-site .lang-switch-icon svg{display:block;width:17px;height:17px}
body.dah-tp-site .lang-switch strong{font-size:15px!important;font-weight:800}
/* Header CTA icon is a real inline SVG and is never replaced by translation */
body.dah-tp-site .header-cta{padding-inline:17px 7px!important}
body.dah-tp-site .header-cta-icon{
  width:32px;height:32px;border-radius:50%;
  background:var(--secondary);
  display:grid;place-items:center;
  color:#fff;flex:none;
  transition:transform .22s ease,background .22s ease;
}
body.dah-tp-site .header-cta:hover .header-cta-icon{transform:translateX(-2px)}
html[dir=ltr] body.dah-tp-site .header-cta:hover .header-cta-icon{transform:translateX(2px)}
html[dir=rtl] body.dah-tp-site .header-cta-icon svg{transform:scaleX(-1)}
/* Subtle hero animation: always-visible content, only transforms/opacity accents */
body.dah-tp-site .hero.hero-v8:after{
  content:"";position:absolute;pointer-events:none;z-index:0;
  width:420px;height:420px;border-radius:50%;
  inset-inline-start:34%;top:18%;
  background:radial-gradient(circle,rgba(0,103,84,.11),rgba(0,103,84,0) 68%);
  animation:tpHeroGlow 8s ease-in-out infinite alternate;
}
body.dah-tp-site .hero-art, body.dah-tp-site .hero-copy{position:relative;z-index:1}
body.dah-tp-site .orbit-one{animation:tpOrbit 26s linear infinite;transform-origin:center}
body.dah-tp-site .orbit-two{animation:tpOrbitReverse 31s linear infinite;transform-origin:center}
body.dah-tp-site .hero-photo-main{animation:tpHeroMain 7.5s ease-in-out infinite alternate;will-change:transform}
body.dah-tp-site .hero-photo-small{animation:tpHeroFloat 6.2s ease-in-out infinite;will-change:transform}
body.dah-tp-site .hero-lifecycle-card{animation:tpHeroFloatAlt 7s ease-in-out infinite;will-change:transform}
body.dah-tp-site .hero-brand-card{animation:tpHeroFloat 8.2s ease-in-out -1.6s infinite;will-change:transform}
body.dah-tp-site .hero-eyebrow>span{animation:tpPulse 2.4s ease-in-out infinite}
body.dah-tp-site .lc-line{transition:background .25s ease,border-color .25s ease,transform .25s ease}
body.dah-tp-site .lc-line:hover{transform:translateY(-2px);border-color:rgba(201,158,107,.34)!important;background:rgba(255,255,255,.085)}
@keyframes tpHeroGlow{from{transform:translate3d(-15px,-8px,0) scale(.94);opacity:.62}to{transform:translate3d(18px,12px,0) scale(1.08);opacity:1}}
@keyframes tpOrbit{to{transform:rotate(360deg)}}
@keyframes tpOrbitReverse{to{transform:rotate(-360deg)}}
@keyframes tpHeroMain{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(0,-6px,0) scale(1.012)}}
@keyframes tpHeroFloat{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-7px,0)}}
@keyframes tpHeroFloatAlt{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,6px,0)}}
@keyframes tpPulse{0%,100%{box-shadow:0 0 0 5px rgba(0,103,84,.08)}50%{box-shadow:0 0 0 9px rgba(0,103,84,.045)}}
/* Align last conversion section with the actual brand, then hand off cleanly to footer */
body.dah-tp-site .request{
  background:linear-gradient(135deg,#006754 0%,#005A49 100%)!important;
}
body.dah-tp-site .request:before{
  background:#C99E6B!important;
  opacity:.095!important;
}
body.dah-tp-site .request .kicker{color:#F1D6B7!important}
body.dah-tp-site .request-copy p{color:rgba(255,255,255,.72)!important}
body.dah-tp-site .contact-mini div{border-color:rgba(255,255,255,.15)!important;background:rgba(255,255,255,.055)!important}
body.dah-tp-site .contact-mini span{color:rgba(255,255,255,.68)!important}
/* Clean brand transition: green -> navy with one gold accent, no waves */
body.dah-tp-site .footer-bridge{
  height:70px!important;
  position:relative!important;
  overflow:hidden!important;
  background:linear-gradient(176deg,var(--secondary) 0 49%,#001A3B 50% 100%)!important;
}
body.dah-tp-site .footer-bridge:before, body.dah-tp-site .footer-bridge:after{content:none!important}
body.dah-tp-site .footer-bridge-accent{
  position:absolute;z-index:2;left:-5%;right:-5%;top:49%;
  height:2px;background:linear-gradient(90deg,transparent 4%,rgba(201,158,107,.18) 20%,rgba(201,158,107,.95) 50%,rgba(201,158,107,.18) 80%,transparent 96%);
  transform:rotate(-1.8deg);
  transform-origin:center;
}
body.dah-tp-site .footer{padding-top:48px!important}
/* Keep mobile quick-nav glassy too */
@media (max-width:900px){body.dah-tp-site .jump-shell, body.dah-tp-site.jump-stuck .jump-shell, body.dah-tp-site.page-scrolled .jump-shell{
    top:calc(var(--header-h) + 3px)!important;
    padding:7px 0!important;
  }
body.dah-tp-site .jump-in, body.dah-tp-site.jump-stuck .jump-in, body.dah-tp-site.page-scrolled .jump-in{
    height:58px!important;
    padding:7px 8px!important;
    border-radius:19px!important;
    border-inline:1px solid rgba(255,255,255,.80)!important;
  }
body.dah-tp-site .jump a, body.dah-tp-site.jump-stuck .jump a{height:42px!important}}
@media (max-width:640px){body.dah-tp-site .lang-switch, body.dah-tp-site.page-scrolled .lang-switch{min-width:46px;width:46px;height:40px;padding:0}
body.dah-tp-site .lang-switch strong{display:none}
body.dah-tp-site .lang-switch-icon{width:30px!important;height:30px!important;flex-basis:30px}
body.dah-tp-site .jump-shell, body.dah-tp-site.jump-stuck .jump-shell, body.dah-tp-site.page-scrolled .jump-shell{padding:5px 0!important}
body.dah-tp-site .jump-in, body.dah-tp-site.jump-stuck .jump-in, body.dah-tp-site.page-scrolled .jump-in{
    height:56px!important;
    padding:7px!important;
    border-radius:17px!important;
    margin-inline:0!important;
  }
body.dah-tp-site .jump a, body.dah-tp-site.jump-stuck .jump a{height:40px!important;padding-inline:12px!important}
body.dah-tp-site .footer-bridge{height:50px!important}
body.dah-tp-site .footer-bridge-accent{height:1px}}
/* Respect motion preferences */
@media (prefers-reduced-motion:reduce){body.dah-tp-site .hero.hero-v8:after, body.dah-tp-site .orbit-one, body.dah-tp-site .orbit-two, body.dah-tp-site .hero-photo-main, body.dah-tp-site .hero-photo-small, body.dah-tp-site .hero-lifecycle-card, body.dah-tp-site .hero-brand-card, body.dah-tp-site .hero-eyebrow>span{animation:none!important}
html{scroll-behavior:auto!important}}
/* ===== V12 — FIXED QUICK NAV / 3-SLIDE HERO / TYPED TITLE / CLEAN FOOTER TRANSITION ===== */
:root{--jump-h:82px}
html{scroll-padding-top:calc(var(--header-h) + var(--jump-h) + 20px)}
body.dah-tp-site [id]{scroll-margin-top:calc(var(--header-h) + var(--jump-h) + 20px)}
/* Quick navigation is visible immediately, directly below the floating header. */
body.dah-tp-site .jump-shell, body.dah-tp-site.jump-stuck .jump-shell, body.dah-tp-site.page-scrolled .jump-shell{
  position:fixed!important;
  inset-inline:0!important;
  top:calc(var(--header-h) - 2px)!important;
  height:var(--jump-h)!important;
  z-index:1150!important;
  padding:6px 0 10px!important;
  pointer-events:none!important;
  background:transparent!important;
}
body.dah-tp-site .jump, body.dah-tp-site.jump-stuck .jump, body.dah-tp-site.page-scrolled .jump{pointer-events:auto!important}
body.dah-tp-site .jump-in, body.dah-tp-site.jump-stuck .jump-in, body.dah-tp-site.page-scrolled .jump-in{
  height:64px!important;
  border-radius:22px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.80),rgba(244,249,250,.72))!important;
  border:1px solid rgba(255,255,255,.88)!important;
  box-shadow:0 16px 44px rgba(0,36,81,.10),inset 0 1px 0 rgba(255,255,255,.94)!important;
  backdrop-filter:blur(24px) saturate(145%)!important;
  -webkit-backdrop-filter:blur(24px) saturate(145%)!important;
}
body.dah-tp-site .hero.hero-v8{padding-top:calc(var(--header-h) + var(--jump-h) + 8px)!important}
/* Refined hero title with a stable typewriter completion. */
body.dah-tp-site .hero-v8 .hero-copy{padding-top:10px!important}
body.dah-tp-site .hero-v8 .hero-title{
  font-size:clamp(43px,4.35vw,62px)!important;
  line-height:1.16!important;
  max-width:760px!important;
  letter-spacing:-.025em!important;
  color:var(--primary)!important;
}
body.dah-tp-site .hero-v8 .hero-title:after{content:none!important}
body.dah-tp-site .hero-title-static{display:block}
body.dah-tp-site .hero-type-wrap{
  display:flex;align-items:baseline;gap:7px;
  min-height:1.28em;margin-top:7px;color:var(--secondary);
}
body.dah-tp-site .hero-type{display:inline;position:relative}
body.dah-tp-site .hero-type-caret{width:3px;height:.78em;border-radius:999px;background:var(--tertiary);display:inline-block;transform:translateY(2px);animation:tpCaret .8s steps(1,end) infinite}
@keyframes tpCaret{0%,48%{opacity:1}49%,100%{opacity:0}}
body.dah-tp-site .hero-v8 .hero-copy>p{margin-top:19px!important}
/* Entire right-side hero becomes a 3-scene visual story. */
body.dah-tp-site .hero-art{height:620px!important;position:relative;isolation:isolate}
body.dah-tp-site .hero-slider{
  position:absolute;z-index:2;inset:5% 4% 7% 7%;
  border-radius:210px 210px 34px 34px;overflow:hidden;
  box-shadow:0 34px 90px rgba(0,36,81,.20);
  background:var(--primary);
}
body.dah-tp-site .hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transform:scale(1.035);transition:opacity .75s ease,transform 1.15s cubic-bezier(.2,.72,.2,1),visibility .75s;pointer-events:none}
body.dah-tp-site .hero-slide.active{opacity:1;visibility:visible;transform:scale(1);pointer-events:auto;z-index:2}
body.dah-tp-site .hero-slide-media, body.dah-tp-site .hero-slide-media img, body.dah-tp-site .hero-slide-shade{position:absolute;inset:0;width:100%;height:100%}
body.dah-tp-site .hero-slide-media img{object-fit:cover;filter:saturate(.82) contrast(1.03)}
body.dah-tp-site .hero-slide.active .hero-slide-media img{animation:tpSlideKen 6.2s ease-out both}
@keyframes tpSlideKen{from{transform:scale(1.04)}to{transform:scale(1.0)}}
body.dah-tp-site .hero-slide-shade{background:linear-gradient(180deg,rgba(0,36,81,.05) 34%,rgba(0,36,81,.72) 100%),linear-gradient(90deg,rgba(0,36,81,.12),transparent 46%)}
body.dah-tp-site .hero-slide-top{position:absolute;z-index:3;top:28px;inset-inline-start:28px;display:flex;align-items:center;gap:9px}
body.dah-tp-site .hero-slide-num{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.91);color:var(--primary);font:700 15px "El Messiri";box-shadow:0 8px 22px rgba(0,36,81,.12)}
body.dah-tp-site .hero-slide-kicker{padding:10px 13px;border-radius:999px;background:rgba(0,36,81,.72);backdrop-filter:blur(13px);-webkit-backdrop-filter:blur(13px);color:#fff;font-size:15px;font-weight:800;border:1px solid rgba(255,255,255,.16)}
body.dah-tp-site .hero-slide-card{position:absolute;z-index:3;inset-inline:25px;bottom:24px;padding:20px 22px;border-radius:20px;background:rgba(255,255,255,.88);border:1px solid rgba(255,255,255,.92);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 18px 50px rgba(0,36,81,.16)}
body.dah-tp-site .hero-slide-card strong{display:block;font:700 21px/1.45 "El Messiri";color:var(--primary)}
body.dah-tp-site .hero-slide-card p{font-size:15px;line-height:1.8;color:#617583;margin-top:4px}
body.dah-tp-site .hero-slider-brand{position:absolute;z-index:7;inset-inline-start:0;bottom:0;width:285px;display:grid;grid-template-columns:98px 1fr;gap:12px;align-items:center;padding:11px 13px;border-radius:19px;background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.96);box-shadow:0 18px 52px rgba(0,36,81,.15);backdrop-filter:blur(18px)}
body.dah-tp-site .hero-slider-logo{height:56px;padding:8px;border-radius:13px;background:#fff;border:1px solid rgba(0,36,81,.07);display:flex;align-items:center}
body.dah-tp-site .hero-slider-logo img{height:auto;max-height:40px;object-fit:contain}
body.dah-tp-site .hero-slider-brand b{display:block;font:700 15px "El Messiri";color:var(--primary)}
body.dah-tp-site .hero-slider-brand small{display:block;font-size:15px;line-height:1.5;color:#6c7f8b;margin-top:3px}
body.dah-tp-site .hero-slider-controls{position:absolute;z-index:8;inset-inline-end:0;top:9%;display:flex;align-items:center;gap:7px;padding:6px;border-radius:999px;background:rgba(255,255,255,.85);border:1px solid rgba(255,255,255,.95);box-shadow:0 14px 36px rgba(0,36,81,.11);backdrop-filter:blur(18px)}
body.dah-tp-site .hero-slide-arrow{width:34px;height:34px;border:0;border-radius:50%;background:transparent;color:var(--primary);display:grid;place-items:center;cursor:pointer;font-size:22px;line-height:1;transition:.2s}
body.dah-tp-site .hero-slide-arrow:hover{background:rgba(0,103,84,.08);color:var(--secondary)}
body.dah-tp-site .hero-slide-dots{display:flex;gap:4px}
body.dah-tp-site .hero-slide-dot{height:34px;min-width:34px;padding:0 8px;border:0;border-radius:999px;background:transparent;color:#7b8d98;font:700 15px "El Messiri";cursor:pointer;transition:.25s}
body.dah-tp-site .hero-slide-dot.active{min-width:51px;background:var(--primary);color:#fff;box-shadow:0 7px 18px rgba(0,36,81,.13)}
/* Remove old hero pieces if stale markup survives. */
body.dah-tp-site .hero-photo-main, body.dah-tp-site .hero-photo-small, body.dah-tp-site .hero-lifecycle-card, body.dah-tp-site .hero-brand-card{display:none!important}
/* Footer transition: one clean brand-colored curve, no line. */
body.dah-tp-site .footer-bridge{
  height:82px!important;position:relative!important;overflow:hidden!important;
  background:var(--secondary)!important;
}
body.dah-tp-site .footer-bridge:before{content:""!important;position:absolute!important;z-index:1;left:-8%!important;right:-8%!important;top:23px!important;height:95px!important;background:#001A3B!important;border-radius:50% 50% 0 0/100% 100% 0 0!important}
body.dah-tp-site .footer-bridge:after{content:""!important;position:absolute!important;width:88px!important;height:88px!important;border-radius:50%!important;top:6px!important;left:50%!important;transform:translateX(-50%)!important;background:rgba(255,255,255,.035)!important;border:1px solid rgba(255,255,255,.07)!important}
body.dah-tp-site .footer-bridge-accent{display:none!important}
body.dah-tp-site .footer-bridge-mark{position:absolute;z-index:3;left:50%;top:19px;transform:translateX(-50%);width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#001A3B;border:1px solid rgba(255,255,255,.12);box-shadow:0 8px 22px rgba(0,36,81,.18)}
body.dah-tp-site .footer-bridge-mark span{position:absolute;height:4px;border-radius:999px;transform:rotate(-28deg)}
body.dah-tp-site .footer-bridge-mark .b1{width:26px;background:var(--secondary);top:19px;left:11px}
body.dah-tp-site .footer-bridge-mark .b2{width:20px;background:var(--tertiary);top:26px;left:18px}
body.dah-tp-site .footer-bridge-mark .b3{width:13px;background:#fff;opacity:.8;top:31px;left:13px}
body.dah-tp-site .footer{padding-top:42px!important}
@media (max-width:1120px){body.dah-tp-site .hero-v8 .hero-title{font-size:clamp(42px,5.1vw,56px)!important}
body.dah-tp-site .hero-slider{inset-inline-start:5%;inset-inline-end:2%}}
@media (max-width:900px){:root{--jump-h:72px}
body.dah-tp-site .jump-shell, body.dah-tp-site.jump-stuck .jump-shell, body.dah-tp-site.page-scrolled .jump-shell{top:calc(var(--header-h) - 3px)!important;padding:5px 0 9px!important}
body.dah-tp-site .jump-in, body.dah-tp-site.jump-stuck .jump-in, body.dah-tp-site.page-scrolled .jump-in{height:58px!important}
body.dah-tp-site .hero.hero-v8{padding-top:calc(var(--header-h) + var(--jump-h) + 2px)!important}
body.dah-tp-site .hero-v8 .hero-title{font-size:clamp(40px,7vw,52px)!important;max-width:730px!important}
body.dah-tp-site .hero-art{height:570px!important}
body.dah-tp-site .hero-slider{inset:4% 5% 8% 5%;border-radius:170px 170px 30px 30px}
body.dah-tp-site .hero-slider-brand{width:270px}
body.dah-tp-site .hero-slider-controls{top:7%;inset-inline-end:1%}}
@media (max-width:640px){:root{--jump-h:64px}
body.dah-tp-site .jump-shell, body.dah-tp-site.jump-stuck .jump-shell, body.dah-tp-site.page-scrolled .jump-shell{top:calc(var(--header-h) - 2px)!important;padding:4px 0 6px!important}
body.dah-tp-site .jump-in, body.dah-tp-site.jump-stuck .jump-in, body.dah-tp-site.page-scrolled .jump-in{height:54px!important;border-radius:17px!important}
body.dah-tp-site .hero.hero-v8{padding-top:calc(var(--header-h) + var(--jump-h))!important}
body.dah-tp-site .hero-v8 .hero-title{font-size:clamp(34px,9.5vw,42px)!important;line-height:1.2!important}
body.dah-tp-site .hero-type-wrap{min-height:2.45em;align-items:flex-start}
body.dah-tp-site .hero-v8 .hero-copy>p{font-size:15px!important}
body.dah-tp-site .hero-art{height:500px!important}
body.dah-tp-site .hero-slider{inset:4% 1% 9% 1%;border-radius:115px 115px 24px 24px}
body.dah-tp-site .hero-slide-top{top:18px;inset-inline-start:17px}
body.dah-tp-site .hero-slide-num{width:36px;height:36px}
body.dah-tp-site .hero-slide-kicker{padding:8px 10px}
body.dah-tp-site .hero-slide-card{inset-inline:16px;bottom:16px;padding:16px 17px;border-radius:17px}
body.dah-tp-site .hero-slide-card strong{font-size:18px}
body.dah-tp-site .hero-slide-card p{line-height:1.65}
body.dah-tp-site .hero-slider-brand{width:250px;grid-template-columns:82px 1fr;padding:9px 10px}
body.dah-tp-site .hero-slider-logo{height:49px}
body.dah-tp-site .hero-slider-brand b{font-size:15px}
body.dah-tp-site .hero-slider-controls{top:7%;inset-inline-end:0;padding:4px}
body.dah-tp-site .hero-slide-arrow{display:none}
body.dah-tp-site .hero-slide-dot{height:30px;min-width:30px}
body.dah-tp-site .hero-slide-dot.active{min-width:43px}
body.dah-tp-site .footer-bridge{height:64px!important}
body.dah-tp-site .footer-bridge:before{top:20px!important;height:72px!important}
body.dah-tp-site .footer-bridge:after{width:70px!important;height:70px!important;top:6px!important}
body.dah-tp-site .footer-bridge-mark{width:44px;height:44px;top:15px}
body.dah-tp-site .footer-bridge-mark .b1{top:16px;left:9px}
body.dah-tp-site .footer-bridge-mark .b2{top:23px;left:16px}
body.dah-tp-site .footer-bridge-mark .b3{top:28px;left:11px}}
@media (prefers-reduced-motion:reduce){body.dah-tp-site .hero-type-caret{animation:none!important}
body.dah-tp-site .hero-slide.active .hero-slide-media img{animation:none!important}
body.dah-tp-site .hero-slide{transition:none!important}}
/* V12.1 — align quick navigation flush to the visual header card */
body.dah-tp-site .jump-shell, body.dah-tp-site.jump-stuck .jump-shell{top:calc(var(--header-h) - 12px)!important}
body.dah-tp-site.page-scrolled .jump-shell{top:calc(var(--header-h) - 23px)!important}
@media (max-width:900px){body.dah-tp-site .jump-shell, body.dah-tp-site.jump-stuck .jump-shell{top:calc(var(--header-h) - 11px)!important}
body.dah-tp-site.page-scrolled .jump-shell{top:calc(var(--header-h) - 15px)!important}}
@media (max-width:640px){body.dah-tp-site .jump-shell, body.dah-tp-site.jump-stuck .jump-shell{top:calc(var(--header-h) - 11px)!important}
body.dah-tp-site.page-scrolled .jump-shell{top:calc(var(--header-h) - 11px)!important}}
/* ===== V13 — OLD QUICK-NAV POSITION / CALM AUTO HERO / FULL-IMAGE SLIDES ===== */
:root{--jump-h:82px}
html{scroll-padding-top:calc(var(--header-h) + var(--jump-h) + 22px)!important}
body.dah-tp-site [id]{scroll-margin-top:calc(var(--header-h) + var(--jump-h) + 22px)!important}
/* Hero no longer reserves room for quick nav; nav returns after hero. */
body.dah-tp-site .hero.hero-v8{padding-top:var(--header-h)!important}
body.dah-tp-site .hero-v8 .hero-copy{padding-top:18px!important}
body.dah-tp-site .hero-v8 .hero-title{
  font-size:clamp(38px,3.8vw,54px)!important;
  line-height:1.18!important;
  max-width:720px!important;
  letter-spacing:-.018em!important;
}
body.dah-tp-site .hero-type-wrap{margin-top:8px!important;min-height:1.35em!important}
body.dah-tp-site .hero-type-caret{width:2px!important;height:.8em!important;opacity:.9}
/* Quick navigation returns to the older, calmer position: after hero, then sticky. */
body.dah-tp-site .jump-shell, body.dah-tp-site.jump-stuck .jump-shell, body.dah-tp-site.page-scrolled .jump-shell{
  position:sticky!important;
  inset-inline:auto!important;
  top:calc(var(--header-h) + 8px)!important;
  height:var(--jump-h)!important;
  z-index:1090!important;
  padding:9px 0!important;
  pointer-events:none!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
body.dah-tp-site .jump, body.dah-tp-site.jump-stuck .jump, body.dah-tp-site.page-scrolled .jump{
  pointer-events:auto!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
body.dah-tp-site .jump-in, body.dah-tp-site.jump-stuck .jump-in, body.dah-tp-site.page-scrolled .jump-in{
  height:64px!important;
  border-radius:22px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(244,249,250,.74))!important;
  border:1px solid rgba(255,255,255,.90)!important;
  box-shadow:0 16px 44px rgba(0,36,81,.10),inset 0 1px 0 rgba(255,255,255,.96)!important;
  backdrop-filter:blur(24px) saturate(145%)!important;
  -webkit-backdrop-filter:blur(24px) saturate(145%)!important;
  padding:7px 9px!important;
}
body.dah-tp-site.jump-stuck .jump-label, body.dah-tp-site.page-scrolled .jump-label{border-color:rgba(0,36,81,.10)!important;color:var(--primary)!important}
body.dah-tp-site.jump-stuck .jump-label-icon, body.dah-tp-site.page-scrolled .jump-label-icon{background:linear-gradient(145deg,var(--primary),#00366E)!important;box-shadow:0 7px 18px rgba(0,36,81,.16)!important}
body.dah-tp-site.jump-stuck .jump-label-copy small, body.dah-tp-site.page-scrolled .jump-label-copy small{color:#87949D!important}
body.dah-tp-site.jump-stuck .jump-label-copy strong, body.dah-tp-site.page-scrolled .jump-label-copy strong{color:var(--primary)!important}
body.dah-tp-site.jump-stuck .jump a, body.dah-tp-site.page-scrolled .jump a{color:#607381!important;background:transparent!important}
body.dah-tp-site.jump-stuck .jump a:hover, body.dah-tp-site.page-scrolled .jump a:hover{background:#F2F8F6!important;color:var(--secondary)!important}
body.dah-tp-site.jump-stuck .jump a.active, body.dah-tp-site.page-scrolled .jump a.active{background:var(--primary)!important;color:#fff!important;box-shadow:0 10px 22px rgba(0,36,81,.16)!important}
body.dah-tp-site.jump-stuck .jump a.active:before, body.dah-tp-site.page-scrolled .jump a.active:before{background:var(--tertiary)!important;box-shadow:0 0 0 4px rgba(201,158,107,.13)!important}
/* Hero visual becomes an automatic cinematic gallery with no manual controls. */
body.dah-tp-site .hero-art{height:600px!important}
body.dah-tp-site .hero-slider{
  inset:4% 2% 8% 4%!important;
  border-radius:38px!important;
  overflow:hidden!important;
  background:#E8EEF1!important;
  box-shadow:0 34px 90px rgba(0,36,81,.18)!important;
  border:1px solid rgba(0,36,81,.06)!important;
}
body.dah-tp-site .hero-slide{
  overflow:hidden;
  transform:none!important;
  transition:opacity 1.05s ease,visibility 1.05s ease!important;
}
body.dah-tp-site .hero-slide:before{
  content:"";
  position:absolute;
  inset:-34px;
  z-index:0;
  background-image:var(--slide-bg);
  background-size:cover;
  background-position:center;
  filter:blur(30px) saturate(.82) brightness(.72);
  transform:scale(1.10);
  opacity:.62;
}
body.dah-tp-site .hero-slide:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(180deg,rgba(0,36,81,.03) 38%,rgba(0,36,81,.48) 100%);
  pointer-events:none;
}
body.dah-tp-site .hero-slide-media{
  inset:14px!important;
  z-index:2!important;
  border-radius:28px!important;
  overflow:hidden!important;
  background:rgba(246,250,251,.23)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.34)!important;
}
body.dah-tp-site .hero-slide-media img{
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:saturate(.90) contrast(1.015)!important;
  animation:none!important;
  transform:scale(1)!important;
  transition:transform 7s ease!important;
}
body.dah-tp-site .hero-slide.active .hero-slide-media img{transform:scale(1.018)!important;animation:none!important}
body.dah-tp-site .hero-slide-shade{
  inset:0!important;
  z-index:3!important;
  background:linear-gradient(180deg,rgba(0,36,81,.02) 48%,rgba(0,36,81,.45) 100%)!important;
}
body.dah-tp-site .hero-slide-top{z-index:5!important;top:28px!important;inset-inline-start:29px!important}
body.dah-tp-site .hero-slide-num{
  background:rgba(255,255,255,.94)!important;
  border:1px solid rgba(255,255,255,.96)!important;
}
body.dah-tp-site .hero-slide-kicker{
  background:rgba(0,36,81,.70)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
}
body.dah-tp-site .hero-slide-card{
  z-index:5!important;
  inset-inline:28px!important;
  bottom:27px!important;
  max-width:470px!important;
  padding:18px 20px!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.89)!important;
  border:1px solid rgba(255,255,255,.94)!important;
  box-shadow:0 18px 45px rgba(0,36,81,.14)!important;
}
body.dah-tp-site .hero-slide-card strong{font-size:19px!important}
body.dah-tp-site .hero-slider-controls{display:none!important}
body.dah-tp-site .hero-slider-brand{bottom:-10px!important;inset-inline-start:-5px!important;z-index:8!important}
/* A tiny passive status mark: visual rhythm, not a control. */
body.dah-tp-site .hero-slider:after{
  content:"";
  position:absolute;
  z-index:9;
  inset-inline-end:24px;
  bottom:22px;
  width:52px;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--tertiary) 0 32%,rgba(255,255,255,.72) 32% 66%,rgba(255,255,255,.36) 66% 100%);
  box-shadow:0 5px 15px rgba(0,36,81,.10);
  pointer-events:none;
}
@media (max-width:1120px){body.dah-tp-site .hero-v8 .hero-title{font-size:clamp(37px,4.6vw,50px)!important}
body.dah-tp-site .hero-slider{inset:4% 1% 9% 3%!important}}
@media (max-width:900px){:root{--jump-h:72px}
body.dah-tp-site .jump-shell, body.dah-tp-site.jump-stuck .jump-shell, body.dah-tp-site.page-scrolled .jump-shell{top:calc(var(--header-h) + 5px)!important;padding:7px 0!important}
body.dah-tp-site .jump-in, body.dah-tp-site.jump-stuck .jump-in, body.dah-tp-site.page-scrolled .jump-in{height:58px!important}
body.dah-tp-site .hero.hero-v8{padding-top:var(--header-h)!important}
body.dah-tp-site .hero-v8 .hero-title{font-size:clamp(36px,6vw,46px)!important}
body.dah-tp-site .hero-art{height:545px!important}
body.dah-tp-site .hero-slider{inset:4% 3% 9% 3%!important;border-radius:30px!important}
body.dah-tp-site .hero-slide-media{inset:11px!important;border-radius:22px!important}}
@media (max-width:640px){:root{--jump-h:64px}
body.dah-tp-site .jump-shell, body.dah-tp-site.jump-stuck .jump-shell, body.dah-tp-site.page-scrolled .jump-shell{top:calc(var(--header-h) + 3px)!important;padding:5px 0!important}
body.dah-tp-site .jump-in, body.dah-tp-site.jump-stuck .jump-in, body.dah-tp-site.page-scrolled .jump-in{height:54px!important;border-radius:17px!important;margin-inline:0!important;padding:7px!important}
body.dah-tp-site .hero.hero-v8{padding-top:var(--header-h)!important}
body.dah-tp-site .hero-v8 .hero-title{font-size:clamp(31px,8vw,38px)!important;line-height:1.22!important}
body.dah-tp-site .hero-type-wrap{min-height:2.38em!important}
body.dah-tp-site .hero-art{height:470px!important}
body.dah-tp-site .hero-slider{inset:3% 0 10% 0!important;border-radius:25px!important}
body.dah-tp-site .hero-slide-media{inset:9px!important;border-radius:19px!important}
body.dah-tp-site .hero-slide-top{top:18px!important;inset-inline-start:18px!important}
body.dah-tp-site .hero-slide-card{inset-inline:17px!important;bottom:18px!important;padding:15px 16px!important;max-width:none!important}
body.dah-tp-site .hero-slide-card strong{font-size:17px!important}
body.dah-tp-site .hero-slider-brand{width:240px!important;bottom:-8px!important}
body.dah-tp-site .hero-slider:after{inset-inline-end:17px;bottom:16px;width:44px}}
@media (prefers-reduced-motion:reduce){body.dah-tp-site .hero-slide, body.dah-tp-site .hero-slide-media img, body.dah-tp-site .hero-type-caret{transition:none!important;animation:none!important}}
/* ===== V14 FINAL OVERRIDES — FLOATING HERO / INLINE TYPE / REQUESTED JUMP SHELL ===== */
/* User-requested sticky shell rules — deliberately last in cascade. */
body.dah-tp-site .jump-shell, body.dah-tp-site.jump-stuck .jump-shell, body.dah-tp-site.page-scrolled .jump-shell{
  position:sticky !important;
  inset-inline:auto !important;
  top:calc(var(--header-h) + -26px) !important;
  height:var(--jump-h) !important;
  z-index:1090 !important;
  padding:9px 0 !important;
  pointer-events:none !important;
  background:transparent !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
}
body.dah-tp-site .jump, body.dah-tp-site.jump-stuck .jump, body.dah-tp-site.page-scrolled .jump{pointer-events:auto!important}
body.dah-tp-site .footer-topline{display:none!important}
/* Typewriter is part of the sentence, not a separate typographic block. */
body.dah-tp-site .hero-v8 .hero-title{font-size:clamp(36px,4.25vw,56px)!important;line-height:1.2!important;max-width:830px!important}
body.dah-tp-site .hero-title-static{display:inline!important}
body.dah-tp-site .hero-type-wrap{display:inline-flex!important;align-items:baseline!important;gap:6px!important;min-height:0!important;margin:0 6px 0 0!important;color:var(--secondary)!important;vertical-align:baseline!important}
html[dir=ltr] body.dah-tp-site .hero-type-wrap{margin:0 0 0 6px!important}
body.dah-tp-site .hero-type{display:inline!important;white-space:normal!important}
body.dah-tp-site .hero-type-caret{width:2px!important;height:.72em!important;transform:translateY(1px)!important;opacity:.9}
/* Floating visual composition — intentionally not a slider. */
body.dah-tp-site .hero-art{height:620px!important;position:relative!important;isolation:isolate!important;overflow:visible!important}
body.dah-tp-site .hero-float-stage{position:absolute;inset:0;isolation:isolate}
body.dah-tp-site .hero-float-orbit{position:absolute;border-radius:50%;pointer-events:none}
body.dah-tp-site .hero-float-orbit.orbit-a{width:520px;height:520px;inset-inline-end:2%;top:5%;border:1px solid rgba(0,103,84,.13)}
body.dah-tp-site .hero-float-orbit.orbit-b{width:390px;height:390px;inset-inline-end:11%;top:15%;border:1px dashed rgba(0,36,81,.10)}
body.dah-tp-site .hero-float-glow{position:absolute;border-radius:50%;filter:blur(58px);pointer-events:none;opacity:.38}
body.dah-tp-site .hero-float-glow.glow-a{width:220px;height:220px;background:rgba(0,103,84,.20);inset-inline-end:4%;top:6%}
body.dah-tp-site .hero-float-glow.glow-b{width:190px;height:190px;background:rgba(201,158,107,.22);inset-inline-start:2%;bottom:8%}
body.dah-tp-site .float-card{position:absolute;margin:0;overflow:hidden;background:#fff;border:7px solid rgba(255,255,255,.96);box-shadow:0 26px 72px rgba(0,36,81,.17);z-index:3;transform:translateZ(0)}
body.dah-tp-site .float-card-main{width:61%;height:72%;inset-inline-end:2%;top:9%;border-radius:34px 150px 34px 34px;animation:tpFloatMain 7.6s ease-in-out infinite}
html[dir=ltr] body.dah-tp-site .float-card-main{border-radius:150px 34px 34px 34px}
body.dah-tp-site .float-card-top{width:36%;height:31%;inset-inline-start:0;top:5%;border-radius:28px 28px 82px 28px;z-index:5;animation:tpFloatTop 6.4s ease-in-out -1.1s infinite}
html[dir=ltr] body.dah-tp-site .float-card-top{border-radius:28px 28px 28px 82px}
body.dah-tp-site .float-card-bottom{width:39%;height:32%;inset-inline-start:4%;bottom:7%;border-radius:30px 86px 30px 30px;z-index:6;animation:tpFloatBottom 7.1s ease-in-out -.6s infinite}
html[dir=ltr] body.dah-tp-site .float-card-bottom{border-radius:86px 30px 30px 30px}
body.dah-tp-site .float-scene{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1.15s ease,visibility 1.15s ease;overflow:hidden;background:#dfe9eb}
body.dah-tp-site .float-scene.active{opacity:1;visibility:visible}
body.dah-tp-site .float-scene img{width:100%;height:100%;object-fit:cover;transform:scale(1.025);transition:transform 6.2s ease;filter:saturate(.84) contrast(1.025)}
body.dah-tp-site .float-scene.active img{transform:scale(1)}
body.dah-tp-site .float-scene:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 46%,rgba(0,36,81,.64) 100%);pointer-events:none}
body.dah-tp-site .float-card figcaption{position:absolute;z-index:3;inset-inline:17px;bottom:15px;color:#fff;text-shadow:0 2px 14px rgba(0,20,42,.24)}
body.dah-tp-site .float-card figcaption small{display:inline-flex;padding:6px 9px;border-radius:999px;background:rgba(0,36,81,.55);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(10px);font-size:15px;font-weight:800}
body.dah-tp-site .float-card-main figcaption b{display:block;margin-top:7px;font:700 17px/1.5 "El Messiri";max-width:390px}
body.dah-tp-site .float-card-top figcaption, body.dah-tp-site .float-card-bottom figcaption{inset-inline:12px;bottom:11px}
body.dah-tp-site .hero-float-logo{position:absolute;z-index:8;width:210px;height:70px;inset-inline-end:4%;bottom:2%;padding:10px 15px;border-radius:18px;background:rgba(255,255,255,.88);border:1px solid rgba(255,255,255,.95);box-shadow:0 18px 46px rgba(0,36,81,.12);backdrop-filter:blur(18px);display:flex;align-items:center;justify-content:center;animation:tpFloatTop 7.4s ease-in-out -2s infinite}
body.dah-tp-site .hero-float-logo img{width:100%;height:100%;object-fit:contain}
body.dah-tp-site .hero-float-note{position:absolute;z-index:7;inset-inline-end:29%;top:0;display:flex;align-items:center;gap:9px;padding:10px 13px;border-radius:999px;background:rgba(245,250,251,.82);border:1px solid rgba(255,255,255,.94);box-shadow:0 12px 32px rgba(0,36,81,.08);backdrop-filter:blur(16px);color:var(--primary);font-size:15px}
body.dah-tp-site .hero-float-note span{width:8px;height:8px;border-radius:50%;background:var(--tertiary);box-shadow:0 0 0 5px rgba(201,158,107,.13)}
@keyframes tpFloatMain{0%,100%{transform:translate3d(0,0,0) rotate(.15deg)}50%{transform:translate3d(0,-9px,0) rotate(-.2deg)}}
@keyframes tpFloatTop{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(4px,-8px,0)}}
@keyframes tpFloatBottom{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(-4px,8px,0)}}
@media (max-width:1120px){body.dah-tp-site .hero-v8 .hero-title{font-size:clamp(35px,4.7vw,48px)!important}
body.dah-tp-site .hero-art{height:570px!important}
body.dah-tp-site .float-card-main{width:63%;height:70%;inset-inline-end:1%}
body.dah-tp-site .float-card-top{width:37%}
body.dah-tp-site .float-card-bottom{width:40%}
body.dah-tp-site .hero-float-logo{width:190px;height:64px}}
@media (max-width:900px){body.dah-tp-site .hero-v8 .hero-title{font-size:clamp(34px,6vw,44px)!important}
body.dah-tp-site .hero-art{height:540px!important;max-width:680px;margin-inline:auto}
body.dah-tp-site .hero-float-note{inset-inline-end:21%}}
@media (max-width:640px){body.dah-tp-site .jump-shell, body.dah-tp-site.jump-stuck .jump-shell, body.dah-tp-site.page-scrolled .jump-shell{top:calc(var(--header-h) + -26px)!important;padding:9px 0!important}
body.dah-tp-site .hero-v8 .hero-title{font-size:clamp(30px,8.3vw,37px)!important;line-height:1.25!important}
body.dah-tp-site .hero-type-wrap{gap:4px!important;margin-inline-start:4px!important}
body.dah-tp-site .hero-art{height:470px!important}
body.dah-tp-site .hero-float-orbit.orbit-a{width:390px;height:390px;inset-inline-end:-22%}
body.dah-tp-site .hero-float-orbit.orbit-b{width:300px;height:300px;inset-inline-end:-4%}
body.dah-tp-site .float-card{border-width:5px}
body.dah-tp-site .float-card-main{width:70%;height:66%;inset-inline-end:0;top:12%;border-radius:25px 100px 25px 25px}
html[dir=ltr] body.dah-tp-site .float-card-main{border-radius:100px 25px 25px 25px}
body.dah-tp-site .float-card-top{width:42%;height:28%;top:3%;border-radius:20px 20px 62px 20px}
body.dah-tp-site .float-card-bottom{width:46%;height:29%;inset-inline-start:1%;bottom:5%;border-radius:22px 64px 22px 22px}
body.dah-tp-site .float-card-main figcaption b{font-size:15px}
body.dah-tp-site .float-card figcaption small{font-size:15px;padding:5px 8px}
body.dah-tp-site .hero-float-logo{width:150px;height:54px;inset-inline-end:1%;bottom:0;padding:8px 11px;border-radius:14px}
body.dah-tp-site .hero-float-note{display:none}}
@media (prefers-reduced-motion:reduce){body.dah-tp-site .float-card, body.dah-tp-site .hero-float-logo{animation:none!important}
body.dah-tp-site .float-scene, body.dah-tp-site .float-scene img{transition:none!important}
body.dah-tp-site .hero-type-caret{animation:none!important}}
/* V15 — confine floating hero artwork to its own half; never cover hero copy. */
body.dah-tp-site .hero-v8 .hero-in{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:clamp(34px,4.2vw,70px)!important;
  align-items:center!important;
}
body.dah-tp-site .hero-v8 .hero-copy{
  position:relative!important;
  z-index:20!important;
  min-width:0!important;
  max-width:720px!important;
}
body.dah-tp-site .hero-float-stage{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  max-width:620px!important;
  height:620px!important;
  min-width:0!important;
  justify-self:end!important;
  align-self:center!important;
  isolation:isolate!important;
  overflow:visible!important;
  z-index:5!important;
}
html[dir="ltr"] body.dah-tp-site .hero-float-stage{justify-self:start!important}
body.dah-tp-site .hero-float-stage .float-card{max-width:100%!important}
body.dah-tp-site .hero-v8 .hero-title{position:relative!important;z-index:22!important}
body.dah-tp-site .hero-v8 .hero-copy>p, body.dah-tp-site .hero-v8 .hero-actions, body.dah-tp-site .hero-proof, body.dah-tp-site .hero-eyebrow{position:relative!important;z-index:22!important}
/* Make the floating composition slightly calmer inside the 50% visual column. */
body.dah-tp-site .float-card-main{width:62%!important;height:71%!important;inset-inline-end:1%!important;top:11%!important}
body.dah-tp-site .float-card-top{width:35%!important;height:29%!important;inset-inline-start:1%!important;top:7%!important}
body.dah-tp-site .float-card-bottom{width:38%!important;height:30%!important;inset-inline-start:4%!important;bottom:8%!important}
body.dah-tp-site .hero-float-logo{width:185px!important;height:64px!important;inset-inline-end:3%!important;bottom:2%!important}
body.dah-tp-site .hero-float-orbit.orbit-a{width:500px!important;height:500px!important;inset-inline-end:-2%!important;top:7%!important}
body.dah-tp-site .hero-float-orbit.orbit-b{width:370px!important;height:370px!important;inset-inline-end:10%!important;top:18%!important}
/* Real client-logo placeholders using the supplied sample image. */
body.dah-tp-site .logo-box, body.dah-tp-site .client{overflow:hidden!important;background:#fff!important}
body.dah-tp-site .logo-box:before{display:none!important}
body.dah-tp-site .client-logo-demo{
  display:block!important;
  width:88%!important;
  height:78%!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:grayscale(.08) saturate(.92)!important;
  transition:transform .25s ease,filter .25s ease!important;
}
body.dah-tp-site .logo-box:hover .client-logo-demo, body.dah-tp-site .client:hover .client-logo-demo{
  transform:scale(1.035)!important;
  filter:none!important;
}
body.dah-tp-site .client{padding:10px!important}
body.dah-tp-site .logo-box{padding:7px!important}
@media (max-width:1120px){body.dah-tp-site .hero-v8 .hero-in{grid-template-columns:minmax(0,1.05fr) minmax(430px,.95fr)!important;gap:34px!important}
body.dah-tp-site .hero-float-stage{height:570px!important;max-width:560px!important}
body.dah-tp-site .hero-float-logo{width:170px!important;height:58px!important}}
@media (max-width:900px){body.dah-tp-site .hero-v8 .hero-in{grid-template-columns:1fr!important;gap:28px!important}
body.dah-tp-site .hero-v8 .hero-copy{max-width:760px!important}
body.dah-tp-site .hero-float-stage{height:540px!important;max-width:650px!important;width:min(100%,650px)!important;justify-self:center!important;margin-inline:auto!important}
html[dir="ltr"] body.dah-tp-site .hero-float-stage{justify-self:center!important}
body.dah-tp-site .float-card-main{width:64%!important;height:69%!important;inset-inline-end:2%!important}
body.dah-tp-site .float-card-top{width:36%!important;height:28%!important}
body.dah-tp-site .float-card-bottom{width:40%!important;height:29%!important}}
@media (max-width:640px){body.dah-tp-site .hero-v8 .hero-in{gap:18px!important}
body.dah-tp-site .hero-float-stage{height:430px!important;max-width:100%!important;margin-top:6px!important}
body.dah-tp-site .float-card-main{width:68%!important;height:64%!important;inset-inline-end:0!important;top:13%!important}
body.dah-tp-site .float-card-top{width:39%!important;height:26%!important;top:5%!important;inset-inline-start:0!important}
body.dah-tp-site .float-card-bottom{width:43%!important;height:27%!important;bottom:5%!important;inset-inline-start:1%!important}
body.dah-tp-site .hero-float-logo{width:142px!important;height:50px!important;bottom:0!important;inset-inline-end:0!important}
body.dah-tp-site .hero-float-orbit.orbit-a{width:350px!important;height:350px!important;inset-inline-end:-22%!important;top:8%!important}
body.dah-tp-site .hero-float-orbit.orbit-b{width:260px!important;height:260px!important;inset-inline-end:-1%!important;top:20%!important}
body.dah-tp-site .client-wall{grid-template-columns:repeat(2,minmax(0,1fr))!important}
body.dah-tp-site .client{height:105px!important}
body.dah-tp-site .logo-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
body.dah-tp-site .logo-box{height:82px!important}}
@media (max-width:380px){body.dah-tp-site .hero-float-stage{height:390px!important}
body.dah-tp-site .float-card-main{width:70%!important;height:62%!important}
body.dah-tp-site .float-card-top{width:41%!important;height:25%!important}
body.dah-tp-site .float-card-bottom{width:45%!important;height:26%!important}
body.dah-tp-site .hero-float-logo{width:128px!important;height:46px!important}}
/* V16 — center floating-card copy at the bottom, clearer quick-nav icon, premium client motion. */
/* Floating hero card labels: centered and anchored to the bottom. */
body.dah-tp-site .hero-float-stage .float-card figcaption{
  inset-inline:0!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100%!important;
  min-height:82px;
  padding:34px 16px 15px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-end!important;
  text-align:center!important;
  background:linear-gradient(180deg,rgba(0,36,81,0) 0%,rgba(0,36,81,.16) 24%,rgba(0,36,81,.78) 100%);
  text-shadow:0 2px 14px rgba(0,20,42,.32)!important;
  pointer-events:none;
}
body.dah-tp-site .hero-float-stage .float-card figcaption small{
  margin-inline:auto!important;
  justify-content:center!important;
  text-align:center!important;
  line-height:1.25!important;
}
body.dah-tp-site .hero-float-stage .float-card-main figcaption{
  min-height:118px;
  padding:46px 20px 18px!important;
}
body.dah-tp-site .hero-float-stage .float-card-main figcaption b{
  max-width:92%!important;
  margin:8px auto 0!important;
  text-align:center!important;
  line-height:1.55!important;
}
body.dah-tp-site .hero-float-stage .float-card-top figcaption, body.dah-tp-site .hero-float-stage .float-card-bottom figcaption{
  min-height:68px;
  padding:28px 10px 10px!important;
}
/* A clear, self-contained icon inside the quick-navigation circle. */
body.dah-tp-site .jump-label-icon svg{display:block;width:18px;height:18px;overflow:visible}
body.dah-tp-site .jump-label-icon{position:relative!important;background:linear-gradient(145deg,var(--primary),#00366E)!important;color:#fff!important;border:1px solid rgba(201,158,107,.34)!important;box-shadow:0 8px 20px rgba(0,36,81,.14)!important}
body.dah-tp-site .jump-label-icon svg circle{fill:var(--tertiary)!important}
body.dah-tp-site .jump-label-icon:after{content:"";position:absolute;inset:5px;border-radius:50%;border:1px solid rgba(255,255,255,.10);pointer-events:none}
/* Clients & partners — premium calm motion without turning the section into a carousel. */
body.dah-tp-site #clients{position:relative;overflow:hidden;isolation:isolate}
body.dah-tp-site #clients:before{
  content:"";
  position:absolute;
  width:460px;height:460px;
  border-radius:50%;
  inset-inline-end:-190px;
  top:40px;
  background:radial-gradient(circle,rgba(0,103,84,.075),rgba(0,103,84,0) 68%);
  pointer-events:none;
  z-index:-1;
}
body.dah-tp-site #clients .client-wall{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:10px 3px 14px;
}
body.dah-tp-site #clients .client-wall:after{
  content:"";
  position:absolute;
  z-index:6;
  top:-24%;bottom:-24%;
  width:18%;
  inset-inline-start:-28%;
  transform:skewX(-15deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent);
  filter:blur(7px);
  opacity:.52;
  pointer-events:none;
  animation:tpClientSweep 9.5s ease-in-out infinite;
}
body.dah-tp-site #clients .client{
  z-index:2;
  overflow:hidden;
  will-change:transform;
  animation:tpClientBreathe 6.8s ease-in-out infinite;
  transition:transform .35s cubic-bezier(.2,.75,.25,1),border-color .35s ease,box-shadow .35s ease,background .35s ease!important;
}
body.dah-tp-site #clients .client:nth-child(2n){animation-delay:-1.15s}
body.dah-tp-site #clients .client:nth-child(3n){animation-delay:-2.2s}
body.dah-tp-site #clients .client:nth-child(4n){animation-delay:-3.35s}
body.dah-tp-site #clients .client:nth-child(5n){animation-delay:-4.3s}
body.dah-tp-site #clients .client:nth-child(6n){animation-delay:-5.1s}
body.dah-tp-site #clients .client:before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(145deg,rgba(255,255,255,.34),transparent 45%,rgba(0,103,84,.035));
  opacity:.45;
  pointer-events:none;
  transition:opacity .35s ease;
  z-index:1;
}
body.dah-tp-site #clients .client-logo-demo{position:relative;z-index:2;transition:transform .42s cubic-bezier(.2,.75,.25,1),filter .42s ease!important;transform:translateZ(0)}
body.dah-tp-site #clients .client:hover{
  animation-play-state:paused;
  transform:translateY(-7px) scale(1.018)!important;
  border-color:rgba(0,103,84,.28)!important;
  background:#fff!important;
  box-shadow:0 20px 44px rgba(0,36,81,.12)!important;
}
body.dah-tp-site #clients .client:hover:before{opacity:.9}
body.dah-tp-site #clients .client:hover .client-logo-demo{transform:scale(1.045);filter:saturate(1.04) contrast(1.02)}
@keyframes tpClientBreathe{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-3px)}
}
@keyframes tpClientSweep{
  0%,18%{inset-inline-start:-28%;opacity:0}
  32%{opacity:.52}
  58%{inset-inline-start:112%;opacity:.32}
  59%,100%{inset-inline-start:112%;opacity:0}
}
@media (max-width:640px){body.dah-tp-site .hero-float-stage .float-card-main figcaption{min-height:92px;padding:34px 12px 12px!important}
body.dah-tp-site .hero-float-stage .float-card-main figcaption b{font-size:15px!important;max-width:98%!important;margin-top:5px!important}
body.dah-tp-site .hero-float-stage .float-card figcaption small{font-size:15px!important}
body.dah-tp-site .hero-float-stage .float-card-top figcaption, body.dah-tp-site .hero-float-stage .float-card-bottom figcaption{min-height:54px;padding:20px 7px 7px!important}
body.dah-tp-site #clients .client-wall:after{width:26%;animation-duration:11s}}
@media (prefers-reduced-motion:reduce){body.dah-tp-site #clients .client, body.dah-tp-site #clients .client-wall:after{animation:none!important}}
/* V17 — clearer jump icon / calm one-time client reveal / ISO concept cards / strict two-line hero title. */
/* Quick navigation icon: bold and legible at a glance. */
body.dah-tp-site .jump-label-icon, body.dah-tp-site.jump-stuck .jump-label-icon, body.dah-tp-site.page-scrolled .jump-label-icon{
  width:40px!important;height:40px!important;min-width:40px!important;border-radius:50%!important;
  display:grid!important;place-items:center!important;background:linear-gradient(145deg,var(--primary),#003D78)!important;
  border:1px solid rgba(255,255,255,.46)!important;box-shadow:0 9px 24px rgba(0,36,81,.18)!important;
}
body.dah-tp-site .jump-label-icon:after{content:none!important}
body.dah-tp-site .jump-label-icon svg{width:23px!important;height:23px!important;display:block!important}
body.dah-tp-site .jump-label-icon .jump-arrow{fill:none!important;stroke:#fff!important;stroke-width:2.25!important;stroke-linecap:round!important;stroke-linejoin:round!important}
body.dah-tp-site .jump-label-icon .jump-dot{fill:var(--tertiary)!important;stroke:none!important}
/* Hero heading stays exactly two intentional lines. */
body.dah-tp-site .hero-v8 .hero-title{font-size:clamp(34px,3.7vw,52px)!important;line-height:1.22!important;max-width:760px!important}
body.dah-tp-site .hero-title-static{display:block!important;white-space:nowrap!important}
body.dah-tp-site .hero-type-wrap{display:flex!important;align-items:baseline!important;gap:6px!important;min-height:1.24em!important;margin:4px 0 0!important;white-space:nowrap!important;color:var(--secondary)!important}
html[dir=ltr] body.dah-tp-site .hero-type-wrap{margin:4px 0 0!important}
body.dah-tp-site .hero-type{display:inline!important;white-space:nowrap!important}
body.dah-tp-site .hero-type-caret{flex:none!important}
/* Clients: no perpetual floating or sweep. One refined reveal on entry, then complete visual calm. */
body.dah-tp-site #clients .client-wall:after{display:none!important}
body.dah-tp-site #clients .client{animation:none!important;will-change:auto!important;transform:none!important;opacity:1!important;transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease,background .28s ease!important}
body.dah-tp-site #clients .client:before{opacity:.45!important}
body.dah-tp-site #clients.clients-reveal-ready:not(.clients-in-view) .client{opacity:0!important;transform:translateY(18px) scale(.975)!important}
body.dah-tp-site #clients.clients-in-view .client{animation:tpClientReveal .72s cubic-bezier(.18,.72,.22,1) both!important}
body.dah-tp-site #clients.clients-in-view .client:nth-child(1){animation-delay:.02s!important}
body.dah-tp-site #clients.clients-in-view .client:nth-child(2){animation-delay:.07s!important}
body.dah-tp-site #clients.clients-in-view .client:nth-child(3){animation-delay:.12s!important}
body.dah-tp-site #clients.clients-in-view .client:nth-child(4){animation-delay:.17s!important}
body.dah-tp-site #clients.clients-in-view .client:nth-child(5){animation-delay:.22s!important}
body.dah-tp-site #clients.clients-in-view .client:nth-child(6){animation-delay:.27s!important}
body.dah-tp-site #clients.clients-in-view .client:nth-child(7){animation-delay:.32s!important}
body.dah-tp-site #clients.clients-in-view .client:nth-child(8){animation-delay:.37s!important}
body.dah-tp-site #clients.clients-in-view .client:nth-child(9){animation-delay:.42s!important}
body.dah-tp-site #clients.clients-in-view .client:nth-child(10){animation-delay:.47s!important}
body.dah-tp-site #clients.clients-in-view .client:nth-child(11){animation-delay:.52s!important}
body.dah-tp-site #clients.clients-in-view .client:nth-child(12){animation-delay:.57s!important}
body.dah-tp-site #clients .client:hover{animation:none!important;transform:translateY(-5px)!important;border-color:rgba(0,103,84,.30)!important;box-shadow:0 18px 42px rgba(0,36,81,.11)!important}
@keyframes tpClientReveal{from{opacity:0;transform:translateY(18px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}
/* ISO concept cards — visual only until client supplies verified certificates. */
body.dah-tp-site .iso-cards{gap:14px!important}
body.dah-tp-site .iso-card{position:relative!important;overflow:hidden!important;min-height:300px!important;padding:22px!important;background:linear-gradient(160deg,#fff 0%,rgba(245,250,251,.84) 100%)!important;box-shadow:0 14px 40px rgba(0,36,81,.06)!important}
body.dah-tp-site .iso-card:before{content:"";position:absolute;width:145px;height:145px;border-radius:50%;inset-inline-end:-70px;top:-70px;background:radial-gradient(circle,rgba(0,103,84,.10),rgba(0,103,84,0) 70%);pointer-events:none}
body.dah-tp-site .iso-badge{width:116px;height:116px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;margin-bottom:22px;background:#fff;border:1px solid rgba(0,36,81,.12);box-shadow:inset 0 0 0 6px rgba(245,250,251,.92),0 12px 28px rgba(0,36,81,.08)}
body.dah-tp-site .iso-badge:before, body.dah-tp-site .iso-badge:after{content:"";position:absolute;border-radius:50%;inset:8px;border:1px solid rgba(0,103,84,.20)}
body.dah-tp-site .iso-badge:after{inset:15px;border-style:dashed;border-color:rgba(201,158,107,.50)}
body.dah-tp-site .iso-badge span{font-size:15px!important;font-weight:800;color:var(--secondary);position:relative;z-index:2}
body.dah-tp-site .iso-badge b{font:700 27px/1 "El Messiri";color:var(--primary);position:relative;z-index:2;margin:2px 0}
body.dah-tp-site .iso-badge small{font-size:15px!important;font-weight:800;color:#71818B;position:relative;z-index:2}
body.dah-tp-site .iso-card h4{font-size:19px!important;color:var(--primary)!important}
body.dah-tp-site .iso-card p{font-size:15px!important;line-height:1.8!important;color:#6E7D86!important}
body.dah-tp-site .iso-card .verify-note{margin-top:18px!important;display:inline-flex!important;align-items:center!important;align-self:flex-start!important;padding:7px 10px!important;border-radius:999px!important;background:rgba(201,158,107,.12)!important;color:#8A6844!important;font-size:15px!important;font-weight:800!important}
body.dah-tp-site .iso-quality{border-top:3px solid var(--primary)!important}
body.dah-tp-site .iso-environment{border-top:3px solid var(--secondary)!important}
body.dah-tp-site .iso-safety{border-top:3px solid var(--tertiary)!important}
@media (max-width:1120px){body.dah-tp-site .hero-v8 .hero-title{font-size:clamp(32px,4.2vw,46px)!important}}
@media (max-width:900px){body.dah-tp-site .hero-v8 .hero-title{font-size:clamp(31px,5.6vw,43px)!important;max-width:720px!important}
body.dah-tp-site .iso-card{min-height:280px!important}}
@media (max-width:640px){body.dah-tp-site .jump-label-icon, body.dah-tp-site.jump-stuck .jump-label-icon, body.dah-tp-site.page-scrolled .jump-label-icon{width:36px!important;height:36px!important;min-width:36px!important}
body.dah-tp-site .jump-label-icon svg{width:21px!important;height:21px!important}
body.dah-tp-site .hero-v8 .hero-title{font-size:clamp(26px,7.2vw,33px)!important;line-height:1.24!important;max-width:100%!important}
body.dah-tp-site .hero-title-static, body.dah-tp-site .hero-type-wrap, body.dah-tp-site .hero-type{white-space:nowrap!important}
body.dah-tp-site .hero-type-wrap{gap:4px!important;margin-top:3px!important}
body.dah-tp-site .iso-card{min-height:265px!important}}
@media (max-width:380px){body.dah-tp-site .hero-v8 .hero-title{font-size:25px!important}}
@media (prefers-reduced-motion:reduce){body.dah-tp-site #clients.clients-reveal-ready:not(.clients-in-view) .client{opacity:1!important;transform:none!important}
body.dah-tp-site #clients.clients-in-view .client{animation:none!important}}
/* ===== V18 — NAVIGATION ENGINE / CERTIFICATE ACTIONS / PREMIUM REQUEST FORM ===== */
html{scroll-behavior:auto!important}
/* Keep the quick nav visually identical while eliminating expensive sticky blur repainting. */
body.dah-tp-site .jump-shell, body.dah-tp-site.jump-stuck .jump-shell, body.dah-tp-site.page-scrolled .jump-shell{will-change:auto!important}
body.dah-tp-site .jump-in, body.dah-tp-site.jump-stuck .jump-in, body.dah-tp-site.page-scrolled .jump-in{
  background:linear-gradient(135deg,rgba(248,251,251,.96),rgba(241,247,247,.94))!important;
  border:1px solid rgba(255,255,255,.98)!important;
  box-shadow:0 14px 38px rgba(0,36,81,.09),inset 0 0 0 1px rgba(0,36,81,.035)!important;
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
  transform:translateZ(0);
}
body.dah-tp-site .jump a{scroll-behavior:auto!important}
body.dah-tp-site .jump a.active{box-shadow:0 9px 22px rgba(0,36,81,.14)!important}
/* Certification actions */
body.dah-tp-site .iso-card{display:flex!important;flex-direction:column!important}
body.dah-tp-site .iso-card .verify-note{margin-top:auto!important}
body.dah-tp-site .cert-view-btn{margin-top:12px;width:100%;height:44px;border:1px solid rgba(0,36,81,.12);border-radius:13px;background:#fff;color:var(--primary);display:flex;align-items:center;justify-content:center;gap:9px;font-family:"Almarai";font-size:15px;font-weight:800;cursor:pointer;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,background .2s ease}
body.dah-tp-site .cert-view-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body.dah-tp-site .cert-view-btn:hover{transform:translateY(-2px);border-color:rgba(0,103,84,.32);background:rgba(0,103,84,.035);box-shadow:0 10px 24px rgba(0,36,81,.08)}
body.dah-tp-site .cert-modal{position:fixed;inset:0;z-index:2500;display:grid;place-items:center;padding:24px;opacity:0;visibility:hidden;transition:opacity .22s ease,visibility .22s ease}
body.dah-tp-site .cert-modal.open{opacity:1;visibility:visible}
body.dah-tp-site .cert-modal-backdrop{position:absolute;inset:0;background:rgba(0,25,55,.62)}
body.dah-tp-site .cert-modal-dialog{position:relative;z-index:2;width:min(720px,100%);max-height:90vh;overflow:auto;background:#eef5f5;border-radius:28px;padding:18px;box-shadow:0 36px 100px rgba(0,20,45,.28)}
body.dah-tp-site .cert-modal-close{position:absolute;z-index:4;top:29px;inset-inline-end:29px;width:42px;height:42px;border:0;border-radius:50%;background:rgba(0,36,81,.08);display:grid;place-items:center;cursor:pointer;color:var(--primary)}
body.dah-tp-site .cert-modal-close svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
body.dah-tp-site .cert-sheet{position:relative;min-height:560px;padding:50px 52px;background:#fff;border:1px solid rgba(0,36,81,.08);border-radius:20px;text-align:center;overflow:hidden}
body.dah-tp-site .cert-sheet:before, body.dah-tp-site .cert-sheet:after{content:"";position:absolute;border-radius:50%;pointer-events:none}
body.dah-tp-site .cert-sheet:before{width:300px;height:300px;inset-inline-end:-165px;top:-155px;border:35px solid rgba(0,103,84,.055)}
body.dah-tp-site .cert-sheet:after{width:260px;height:260px;inset-inline-start:-155px;bottom:-160px;border:28px solid rgba(201,158,107,.08)}
body.dah-tp-site .cert-sheet-top{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid rgba(0,36,81,.09);padding-bottom:18px;color:#6b7d86;font-size:15px;font-weight:800}
body.dah-tp-site .cert-sheet-top b{color:var(--primary);font:700 20px "El Messiri"}
body.dah-tp-site .cert-seal{width:145px;height:145px;border-radius:50%;margin:48px auto 26px;border:1px solid rgba(0,36,81,.13);box-shadow:inset 0 0 0 8px #f5fafb;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--primary);position:relative}
body.dah-tp-site .cert-seal:before{content:"";position:absolute;inset:15px;border-radius:50%;border:1px dashed rgba(201,158,107,.65)}
body.dah-tp-site .cert-seal span{font-size:15px;font-weight:800;color:var(--secondary)}
body.dah-tp-site .cert-seal strong{font:700 34px "El Messiri"}
body.dah-tp-site .cert-sheet h3{font-size:30px;color:var(--primary);margin:0}
body.dah-tp-site .cert-sheet p{max-width:520px;margin:13px auto 0;font-size:15px;color:#6b7d86}
body.dah-tp-site .cert-sheet-footer{position:absolute;left:48px;right:48px;bottom:35px;display:flex;align-items:center;gap:13px;color:#84929a;font-size:15px;font-weight:800}
body.dah-tp-site .cert-sheet-footer i{height:1px;flex:1;background:linear-gradient(90deg,var(--tertiary),rgba(0,103,84,.25))}
body.dah-tp-site.cert-open{overflow:hidden}
/* Premium request section */
body.dah-tp-site .request{background:linear-gradient(138deg,#002451 0%,#003c55 52%,#006754 130%)!important}
body.dah-tp-site .request:before{width:600px!important;height:600px!important;background:rgba(201,158,107,.24)!important;filter:blur(210px)!important;opacity:.35!important}
body.dah-tp-site .request-grid{grid-template-columns:.78fr 1.22fr!important;gap:64px!important}
body.dah-tp-site .request-copy{top:155px!important}
body.dah-tp-site .request-copy>p{font-size:15px!important;line-height:1.9!important;max-width:530px}
body.dah-tp-site .contact-mini{margin-top:34px!important;grid-template-columns:1fr!important}
body.dah-tp-site .contact-mini div{padding:16px 17px!important;background:rgba(255,255,255,.055)!important;border-color:rgba(255,255,255,.12)!important}
body.dah-tp-site .contact-mini b{font-size:15px!important}
body.dah-tp-site .contact-mini span{font-size:15px!important;color:rgba(255,255,255,.66)!important}
body.dah-tp-site .form-premium{padding:0!important;border-radius:30px!important;overflow:hidden;background:rgba(255,255,255,.99)!important;box-shadow:0 36px 90px rgba(0,20,45,.24)!important;border:1px solid rgba(255,255,255,.9)!important}
body.dah-tp-site .form-premium-head{display:grid;grid-template-columns:54px 1fr;gap:15px;align-items:start;padding:26px 28px 23px;background:linear-gradient(135deg,#fff,#f5fafb);border-bottom:1px solid rgba(0,36,81,.07)}
body.dah-tp-site .form-premium-icon{width:54px;height:54px;border-radius:17px;background:var(--primary);display:grid;place-items:center;color:#fff;box-shadow:0 12px 28px rgba(0,36,81,.18)}
body.dah-tp-site .form-premium-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
body.dah-tp-site .form-premium-head small{display:block;color:var(--secondary);font-size:15px;font-weight:800;margin-bottom:4px}
body.dah-tp-site .form-premium-head h3{font-size:25px!important;line-height:1.35;margin:0;color:var(--primary)}
body.dah-tp-site .form-premium-head p{font-size:15px!important;color:#73828a!important;margin-top:5px!important;line-height:1.75}
body.dah-tp-site .service-select-block{padding:22px 28px 7px}
body.dah-tp-site .service-select-block>label, body.dah-tp-site .premium-fields .field>label{display:block;font-size:15px;font-weight:800;color:#51666f;margin-bottom:8px}
body.dah-tp-site .select-premium, body.dah-tp-site .input-premium{height:52px;border:1px solid rgba(0,36,81,.11);border-radius:15px;background:#f8fbfb;display:grid;grid-template-columns:36px 1fr 30px;align-items:center;padding:0 11px;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}
body.dah-tp-site .input-premium{grid-template-columns:36px 1fr}
body.dah-tp-site .select-premium:focus-within, body.dah-tp-site .input-premium:focus-within, body.dah-tp-site .textarea-premium:focus-within{border-color:rgba(0,103,84,.45);box-shadow:0 0 0 4px rgba(0,103,84,.055);background:#fff}
body.dah-tp-site .input-icon{display:grid;place-items:center;color:var(--secondary)}
body.dah-tp-site .input-icon svg, body.dah-tp-site .select-chevron svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
body.dah-tp-site .select-chevron{display:grid;place-items:center;color:#809099}
body.dah-tp-site .select-premium select, body.dah-tp-site .input-premium input{width:100%;height:100%;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;padding:0 5px!important;border-radius:0!important;color:var(--primary);font-family:"Almarai";font-size:15px!important;font-weight:700}
body.dah-tp-site .select-premium select{appearance:none;cursor:pointer}
body.dah-tp-site .premium-fields{padding:12px 28px 4px!important;margin-top:0!important;gap:14px!important}
body.dah-tp-site .premium-fields .field{gap:0!important}
body.dah-tp-site .textarea-premium{border:1px solid rgba(0,36,81,.11);border-radius:15px;background:#f8fbfb;padding:12px 14px 9px;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}
body.dah-tp-site .textarea-premium textarea{width:100%;min-height:112px;border:0!important;outline:0!important;background:transparent!important;padding:0!important;box-shadow:none!important;resize:vertical;color:var(--primary);font-family:"Almarai";font-size:15px!important;line-height:1.8}
body.dah-tp-site .brief-hint{display:block;margin-top:6px;padding-top:7px;border-top:1px solid rgba(0,36,81,.06);color:#8b999f;font-size:15px}
body.dah-tp-site .form-premium-foot{margin-top:16px;padding:19px 28px 24px;border-top:1px solid rgba(0,36,81,.07);display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fbfdfd}
body.dah-tp-site .form-assurance{display:flex;align-items:center;gap:11px;min-width:0}
body.dah-tp-site .form-assurance>span{width:38px;height:38px;min-width:38px;border-radius:12px;background:rgba(0,103,84,.08);display:grid;place-items:center;color:var(--secondary)}
body.dah-tp-site .form-assurance svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body.dah-tp-site .form-assurance b, body.dah-tp-site .form-assurance small{display:block}
body.dah-tp-site .form-assurance b{font-size:15px;color:var(--primary)}
body.dah-tp-site .form-assurance small{font-size:15px;color:#829199;margin-top:1px}
body.dah-tp-site .form-submit{height:50px;min-width:165px;border:0;border-radius:15px;background:var(--secondary);color:#fff;font-family:"Almarai";font-size:15px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;box-shadow:0 13px 28px rgba(0,103,84,.20);transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
body.dah-tp-site .form-submit svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
body.dah-tp-site .form-submit:hover{transform:translateY(-2px);background:#005849;box-shadow:0 16px 32px rgba(0,103,84,.25)}
html[dir=rtl] body.dah-tp-site .form-submit svg{transform:scaleX(-1)}
@media (max-width:900px){body.dah-tp-site .request-grid{grid-template-columns:1fr!important;gap:34px!important}
body.dah-tp-site .request-copy{position:relative!important;top:auto!important}
body.dah-tp-site .form-premium{max-width:760px}
body.dah-tp-site .cert-sheet{min-height:520px;padding:44px 35px}
body.dah-tp-site .cert-sheet-footer{left:35px;right:35px}}
@media (max-width:640px){body.dah-tp-site .form-premium-head{grid-template-columns:44px 1fr;padding:21px 18px 19px}
body.dah-tp-site .form-premium-icon{width:44px;height:44px;border-radius:14px}
body.dah-tp-site .form-premium-head h3{font-size:21px!important}
body.dah-tp-site .service-select-block{padding:19px 18px 5px}
body.dah-tp-site .premium-fields{padding:11px 18px 3px!important;grid-template-columns:1fr!important}
body.dah-tp-site .premium-fields .field{grid-column:1/-1}
body.dah-tp-site .form-premium-foot{padding:17px 18px 20px;align-items:stretch;flex-direction:column}
body.dah-tp-site .form-submit{width:100%}
body.dah-tp-site .form-assurance b{font-size:15px}
body.dah-tp-site .cert-modal{padding:12px}
body.dah-tp-site .cert-modal-dialog{padding:10px;border-radius:21px}
body.dah-tp-site .cert-sheet{min-height:500px;padding:40px 20px}
body.dah-tp-site .cert-sheet h3{font-size:24px}
body.dah-tp-site .cert-sheet-top{align-items:flex-start;flex-direction:column;gap:5px}
body.dah-tp-site .cert-modal-close{top:20px;inset-inline-end:20px}
body.dah-tp-site .cert-sheet-footer{left:20px;right:20px;bottom:25px}}
/* ===== PRODUCTION MOBILE V19 — FIXED STICKY GEOMETRY / LOW-JANK MOBILE ===== */
@media (max-width:900px){/* Keep header geometry constant while scrolling so the sticky strip never jumps into it. */
:root{--jump-h:70px}
body.dah-tp-site .header{height:var(--header-h)!important;padding-top:8px!important;transition:none!important}
body.dah-tp-site .header-in, body.dah-tp-site.page-scrolled .header-in{
    height:66px!important;
    border-radius:18px!important;
    padding-inline:12px!important;
    background:rgba(255,255,255,.985)!important;
    box-shadow:0 10px 28px rgba(0,36,81,.09)!important;
    transition:none!important;
  }
body.dah-tp-site .header-actions{gap:7px!important}
body.dah-tp-site .brand{max-width:min(42vw,190px)!important;min-width:0!important}
body.dah-tp-site .brand .tp-logo-img{height:48px!important;background-size:contain!important}
body.dah-tp-site .lang-switch{
    width:42px!important;min-width:42px!important;height:42px!important;padding:0!important;
    border-radius:50%!important;background:#fff!important;box-shadow:0 6px 18px rgba(0,36,81,.07)!important;
    -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
  }
body.dah-tp-site .lang-switch strong{display:none!important}
body.dah-tp-site .lang-switch-icon{width:30px!important;height:30px!important;margin:auto!important}
body.dah-tp-site .lang-switch-icon svg{width:19px!important;height:19px!important}
body.dah-tp-site .menu-btn{width:42px!important;height:42px!important;border-radius:13px!important;flex:none!important}
body.dah-tp-site .mobile-nav{
    top:calc(var(--header-h) + 4px)!important;
    inset-inline:15px!important;
    max-height:calc(100dvh - var(--header-h) - 18px)!important;
    overflow-y:auto!important;
    border:1px solid rgba(0,36,81,.08)!important;
    border-radius:20px!important;
    padding:13px 18px 20px!important;
    box-shadow:0 22px 56px rgba(0,36,81,.16)!important;
    overscroll-behavior:contain!important;
  }
/* Quick navigation stays AFTER the hero, then sticks cleanly BELOW the header. */
body.dah-tp-site .jump-shell, body.dah-tp-site.jump-stuck .jump-shell, body.dah-tp-site.page-scrolled .jump-shell{
    top:calc(var(--header-h) + 6px)!important;
    height:var(--jump-h)!important;
    padding:4px 0 8px!important;
    z-index:1080!important;
  }
body.dah-tp-site .jump, body.dah-tp-site.jump-stuck .jump, body.dah-tp-site.page-scrolled .jump{height:100%!important}
body.dah-tp-site .jump-in, body.dah-tp-site.jump-stuck .jump-in, body.dah-tp-site.page-scrolled .jump-in{
    height:58px!important;
    margin-inline:0!important;
    padding:6px!important;
    gap:6px!important;
    border-radius:19px!important;
    border:1px solid rgba(0,36,81,.075)!important;
    background:#f8fbfb!important;
    box-shadow:0 9px 24px rgba(0,36,81,.075)!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x proximity!important;
    overscroll-behavior-inline:contain!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-x!important;
  }
body.dah-tp-site .jump-fade{display:none!important}
body.dah-tp-site .jump-label{
    display:flex!important;
    align-items:center!important;justify-content:center!important;
    flex:0 0 42px!important;width:42px!important;min-width:42px!important;height:42px!important;
    margin:0!important;padding:0!important;border:0!important;
  }
body.dah-tp-site .jump-label-copy{display:none!important}
body.dah-tp-site .jump-label-icon, body.dah-tp-site.jump-stuck .jump-label-icon, body.dah-tp-site.page-scrolled .jump-label-icon{
    width:38px!important;height:38px!important;min-width:38px!important;
    box-shadow:0 6px 16px rgba(0,36,81,.14)!important;
  }
body.dah-tp-site .jump-label-icon svg{width:21px!important;height:21px!important}
body.dah-tp-site .jump a, body.dah-tp-site.jump-stuck .jump a, body.dah-tp-site.page-scrolled .jump a{
    height:42px!important;
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    padding:0 13px!important;
    border-radius:14px!important;
    font-size:15px!important;
    scroll-snap-align:center!important;
    transition:background-color .16s ease,color .16s ease,border-color .16s ease!important;
    box-shadow:none!important;
  }
body.dah-tp-site .jump a.active, body.dah-tp-site.jump-stuck .jump a.active, body.dah-tp-site.page-scrolled .jump a.active{
    box-shadow:0 6px 15px rgba(0,36,81,.12)!important;
  }
html{scroll-padding-top:calc(var(--header-h) + var(--jump-h) + 18px)!important}
body.dah-tp-site #about, body.dah-tp-site #contracting, body.dah-tp-site #environment, body.dah-tp-site #permit, body.dah-tp-site #engineering, body.dah-tp-site #fire, body.dah-tp-site #infrastructure, body.dah-tp-site #facilities, body.dah-tp-site #accommodation, body.dah-tp-site #landscaping{
    scroll-margin-top:calc(var(--header-h) + var(--jump-h) + 18px)!important;
  }
/* Mobile performance: preserve the approved look without continuous compositor work. */
body.dah-tp-site .float-card, body.dah-tp-site .hero-float-logo{animation:none!important;will-change:auto!important}
body.dah-tp-site .float-scene, body.dah-tp-site .float-scene img{transition:none!important;will-change:auto!important}
body.dah-tp-site .hero-float-glow{display:none!important}
body.dah-tp-site .float-scene img{filter:none!important;transform:none!important}
body.dah-tp-site .hero-float-logo, body.dah-tp-site .hero-float-note, body.dah-tp-site .float-card figcaption small, body.dah-tp-site .media-float, body.dah-tp-site .eng-caption, body.dah-tp-site .fire-stamp, body.dah-tp-site .contract-badge, body.dah-tp-site .license-card, body.dah-tp-site .btn-glass{
    -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
  }
body.dah-tp-site .hero-float-logo{background:rgba(255,255,255,.96)!important}
body.dah-tp-site .float-card{box-shadow:0 14px 36px rgba(0,36,81,.12)!important}
body.dah-tp-site .service-media, body.dah-tp-site .fire-media, body.dah-tp-site .contract-media, body.dah-tp-site .eng-visual, body.dah-tp-site .accom-media, body.dah-tp-site .project-media, body.dah-tp-site .article-main, body.dah-tp-site .article-small{
    box-shadow:none!important;
  }
/* Cleaner mobile rhythm without changing the visual system. */
body.dah-tp-site .section{padding:68px 0!important}
body.dah-tp-site .section-head{margin-bottom:30px!important}
body.dah-tp-site .hero-v8 .hero-in{padding-top:34px!important;padding-bottom:42px!important;gap:22px!important}
body.dah-tp-site .hero-v8 .hero-copy{max-width:100%!important}
body.dah-tp-site .hero-v8 .hero-copy>p{font-size:15px!important;line-height:1.85!important}
body.dah-tp-site .hero-v8 .hero-actions{gap:9px!important;margin-top:25px!important}
body.dah-tp-site .hero-proof{margin-top:24px!important}
body.dah-tp-site .hero-float-stage{height:500px!important;margin-top:0!important}
body.dah-tp-site .trust{padding:24px 0!important}
body.dah-tp-site .logo-box{height:78px!important}
body.dah-tp-site .service-media, body.dah-tp-site .fire-media{height:440px!important}
body.dah-tp-site .infra-stage{height:590px!important}
body.dah-tp-site .accom-media{height:440px!important}
body.dah-tp-site .project-media{height:330px!important}
body.dah-tp-site .industry-display{min-height:455px!important}
body.dah-tp-site .client{height:100px!important}
body.dah-tp-site .form-premium{border-radius:24px!important;box-shadow:0 18px 44px rgba(0,20,45,.14)!important}}
@media (max-width:640px){:root{--header-h:76px;--jump-h:66px}
body.dah-tp-site .wrap{width:calc(100% - 26px)!important}
body.dah-tp-site .header{padding-top:7px!important}
body.dah-tp-site .header-in, body.dah-tp-site.page-scrolled .header-in{
    height:60px!important;border-radius:16px!important;padding-inline:9px!important;
  }
body.dah-tp-site .brand{width:146px!important;max-width:42vw!important;height:46px!important}
body.dah-tp-site .brand .tp-logo-img{height:44px!important}
body.dah-tp-site .lang-switch{width:40px!important;min-width:40px!important;height:40px!important}
body.dah-tp-site .menu-btn{width:40px!important;height:40px!important;border-radius:12px!important}
body.dah-tp-site .mobile-nav{top:calc(var(--header-h) + 2px)!important;inset-inline:13px!important;border-radius:18px!important}
body.dah-tp-site .jump-shell, body.dah-tp-site.jump-stuck .jump-shell, body.dah-tp-site.page-scrolled .jump-shell{
    top:calc(var(--header-h) + 5px)!important;
    height:var(--jump-h)!important;
    padding:3px 0 7px!important;
  }
body.dah-tp-site .jump-in, body.dah-tp-site.jump-stuck .jump-in, body.dah-tp-site.page-scrolled .jump-in{
    height:56px!important;border-radius:18px!important;padding:6px!important;
  }
body.dah-tp-site .jump-label{flex-basis:40px!important;width:40px!important;min-width:40px!important;height:40px!important}
body.dah-tp-site .jump-label-icon, body.dah-tp-site.jump-stuck .jump-label-icon, body.dah-tp-site.page-scrolled .jump-label-icon{
    width:36px!important;height:36px!important;min-width:36px!important;
  }
body.dah-tp-site .jump a, body.dah-tp-site.jump-stuck .jump a, body.dah-tp-site.page-scrolled .jump a{
    height:40px!important;padding:0 12px!important;border-radius:13px!important;
  }
html{scroll-padding-top:calc(var(--header-h) + var(--jump-h) + 16px)!important}
body.dah-tp-site #about, body.dah-tp-site #contracting, body.dah-tp-site #environment, body.dah-tp-site #permit, body.dah-tp-site #engineering, body.dah-tp-site #fire, body.dah-tp-site #infrastructure, body.dah-tp-site #facilities, body.dah-tp-site #accommodation, body.dah-tp-site #landscaping{
    scroll-margin-top:calc(var(--header-h) + var(--jump-h) + 16px)!important;
  }
body.dah-tp-site .hero-v8 .hero-title{font-size:clamp(26px,7.35vw,32px)!important;line-height:1.26!important}
body.dah-tp-site .hero-v8 .hero-copy>p{font-size:15px!important}
body.dah-tp-site .hero-float-stage{height:410px!important}
body.dah-tp-site .float-card-main{width:68%!important;height:63%!important;top:13%!important}
body.dah-tp-site .float-card-top{width:39%!important;height:25%!important;top:5%!important}
body.dah-tp-site .float-card-bottom{width:43%!important;height:26%!important;bottom:5%!important}
body.dah-tp-site .hero-float-orbit.orbit-a{width:330px!important;height:330px!important}
body.dah-tp-site .hero-float-orbit.orbit-b{width:245px!important;height:245px!important}
body.dah-tp-site .hero-float-logo{width:136px!important;height:48px!important}
body.dah-tp-site .hero-float-stage .float-card-main figcaption{min-height:82px!important;padding:30px 10px 10px!important}
body.dah-tp-site .hero-float-stage .float-card-main figcaption b{font-size:15px!important;line-height:1.45!important}
body.dah-tp-site .section{padding:62px 0!important}
body.dah-tp-site .service-media, body.dah-tp-site .fire-media{height:390px!important}
body.dah-tp-site .contract-media{height:410px!important}
body.dah-tp-site .eng-visual{min-height:370px!important}
body.dah-tp-site .infra-stage{height:540px!important}
body.dah-tp-site .accom-media{height:405px!important}
body.dah-tp-site .article-main{height:385px!important}
body.dah-tp-site .article-small{height:240px!important}
body.dah-tp-site .footer{padding-top:42px!important}}
@media (max-width:390px){body.dah-tp-site .brand{width:132px!important}
body.dah-tp-site .header-actions{gap:5px!important}
body.dah-tp-site .hero-float-stage{height:380px!important}
body.dah-tp-site .jump a, body.dah-tp-site.jump-stuck .jump a, body.dah-tp-site.page-scrolled .jump a{padding-inline:11px!important}}
/* No hover-only compositor effects on touch-first devices. */
@media (hover:none) and (pointer:coarse){body.dah-tp-site .btn, body.dah-tp-site .client, body.dah-tp-site .logo-box, body.dah-tp-site .service-page-link, body.dah-tp-site .cert-view-btn, body.dah-tp-site .form-submit{transition:none!important}
body.dah-tp-site .btn:hover, body.dah-tp-site .client:hover, body.dah-tp-site .logo-box:hover, body.dah-tp-site .service-page-link:hover, body.dah-tp-site .cert-view-btn:hover, body.dah-tp-site .form-submit:hover{transform:none!important}}
/* ===== V19: HERO BRAND SIGNATURE ===== */
body.dah-tp-site .hero-company-signature{
  display:inline-flex;align-items:center;gap:13px;margin-bottom:18px;padding:8px 14px 8px 10px;
  border:1px solid rgba(0,36,81,.10);border-radius:17px;background:rgba(255,255,255,.72);
  box-shadow:0 12px 34px rgba(0,36,81,.07);backdrop-filter:blur(10px);
}
body.dah-tp-site .hero-company-accent{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;position:relative;overflow:hidden;
  background:linear-gradient(145deg,var(--primary),#00366E);box-shadow:0 8px 20px rgba(0,36,81,.14)}
body.dah-tp-site .hero-company-accent:before, body.dah-tp-site .hero-company-accent:after, body.dah-tp-site .hero-company-accent i{content:"";position:absolute;border-radius:999px;transform:rotate(-34deg)}
body.dah-tp-site .hero-company-accent:before{width:34px;height:7px;background:var(--secondary);right:-5px;top:9px}
body.dah-tp-site .hero-company-accent:after{width:28px;height:6px;background:var(--tertiary);left:-5px;bottom:8px}
body.dah-tp-site .hero-company-accent i{width:20px;height:5px;background:#fff;opacity:.9;left:9px;top:17px}
body.dah-tp-site .hero-company-copy{display:grid;line-height:1.1;text-align:start}
body.dah-tp-site .hero-company-copy strong{font:700 25px/1.05 "El Messiri",sans-serif;color:var(--primary);letter-spacing:-.01em}
body.dah-tp-site .hero-company-copy small{font-size:15px;color:#6D7D88;font-weight:700;margin-top:5px;white-space:nowrap}
@media (max-width:640px){body.dah-tp-site .hero-company-signature{margin-bottom:15px;padding:7px 11px 7px 8px;gap:10px;border-radius:15px;max-width:100%}
body.dah-tp-site .hero-company-accent{width:34px;height:34px;border-radius:11px;flex:none}
body.dah-tp-site .hero-company-copy strong{font-size:21px}
body.dah-tp-site .hero-company-copy small{font-size:15px;white-space:normal;line-height:1.45}}
/* ===== V20 FINAL: BRAND-IN-TITLE + LOW-JANK REQUEST/FOOTER HANDOFF ===== */
/* Brand is part of the primary H1, not a separate badge. */
body.dah-tp-site .hero-company-signature{display:none!important}
body.dah-tp-site .hero-v8 .hero-title{
  font-size:clamp(38px,4.05vw,56px)!important;
  line-height:1.19!important;
  max-width:780px!important;
  text-wrap:balance;
}
body.dah-tp-site .hero-title-static{display:block!important;white-space:normal!important}
body.dah-tp-site .hero-title-brand{
  display:inline!important;
  color:var(--secondary)!important;
  font-weight:700!important;
  position:relative;
  margin-inline-end:.13em;
}
body.dah-tp-site .hero-title-brand:after{
  content:"";display:inline-block;width:.30em;height:.30em;border-radius:50%;
  background:var(--tertiary);margin-inline-start:.12em;vertical-align:.22em;
}
body.dah-tp-site .hero-type-wrap{
  display:flex!important;align-items:baseline!important;gap:7px!important;
  margin-top:3px!important;min-height:1.24em!important;color:var(--primary)!important;
  white-space:nowrap!important;
}
body.dah-tp-site .hero-type{color:var(--primary)!important}
body.dah-tp-site .hero-type-caret{background:var(--tertiary)!important}
/* Remove the expensive decorative handoff. The footer itself becomes the transition. */
body.dah-tp-site .footer-bridge, body.dah-tp-site .footer-bridge:before, body.dah-tp-site .footer-bridge:after, body.dah-tp-site .footer-bridge-mark, body.dah-tp-site .footer-bridge-accent, body.dah-tp-site .footer-bridge-line{display:none!important}
body.dah-tp-site .request{
  padding-bottom:78px!important;
  overflow:hidden!important;
  isolation:auto!important;
  contain:layout paint!important;
}
body.dah-tp-site .request:before, body.dah-tp-site .request:after{display:none!important;content:none!important}
body.dah-tp-site .request-grid, body.dah-tp-site .request-copy, body.dah-tp-site .form-premium{will-change:auto!important;transform:none!important;filter:none!important}
body.dah-tp-site .form-premium{box-shadow:0 22px 52px rgba(0,20,45,.14)!important}
body.dah-tp-site .footer{
  position:relative!important;
  margin-top:0!important;
  padding-top:58px!important;
  border-radius:0!important;
  background:#001A3B!important;
  box-shadow:none!important;
  filter:none!important;
  -webkit-filter:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  animation:none!important;
  transform:none!important;
  contain:layout paint!important;
}
body.dah-tp-site .footer:before, body.dah-tp-site .footer:after{content:none!important;display:none!important}
body.dah-tp-site .footer *{will-change:auto!important}
/* Keep the premium floating appearance without continuous backdrop recomposition during scroll. */
body.dah-tp-site .header-in, body.dah-tp-site.page-scrolled .header-in{
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  background:rgba(255,255,255,.965)!important;
}
body.dah-tp-site .jump-in, body.dah-tp-site.jump-stuck .jump-in, body.dah-tp-site.page-scrolled .jump-in{
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  background:linear-gradient(135deg,rgba(255,255,255,.965),rgba(246,250,251,.945))!important;
}
/* Nothing near the last two blocks should run a continuous CSS animation. */
body.dah-tp-site .request *, body.dah-tp-site .footer *{animation-duration:0s!important;animation-iteration-count:1!important}
@media (max-width:900px){body.dah-tp-site .hero-v8 .hero-title{font-size:clamp(34px,6.3vw,46px)!important;line-height:1.22!important;max-width:690px!important}
body.dah-tp-site .request{padding-bottom:62px!important}
body.dah-tp-site .footer{border-radius:0!important;padding-top:48px!important}}
@media (max-width:640px){body.dah-tp-site .hero-v8 .hero-title{font-size:clamp(30px,8.8vw,38px)!important;line-height:1.24!important;letter-spacing:-.012em!important}
body.dah-tp-site .hero-title-static{max-width:100%!important}
body.dah-tp-site .hero-type-wrap{font-size:.91em!important;gap:5px!important;white-space:nowrap!important}
body.dah-tp-site .hero-title-brand:after{width:.26em;height:.26em;vertical-align:.2em}
body.dah-tp-site .request{padding-bottom:52px!important}
body.dah-tp-site .footer{border-radius:0!important;padding-top:42px!important}}
@media (max-width:380px){body.dah-tp-site .hero-v8 .hero-title{font-size:29px!important}
body.dah-tp-site .hero-type-wrap{font-size:.88em!important}}
/* ===== dev.ahmedhatem Elementor / WordPress integration ===== */
body.dah-tp-site .elementor-widget[class*="elementor-widget-dah-tp-"]{--tp-widget:1;overflow:visible}
body.dah-tp-site .elementor-widget[class*="elementor-widget-dah-tp-"]>.elementor-widget-container{overflow:visible}
body.dah-tp-site .elementor-widget[class*="elementor-widget-dah-tp-"]{overflow:visible}
body.dah-tp-site .dah-tp-header-widget .brand img, body.dah-tp-site .footer-logo img, body.dah-tp-site .hero-float-logo img{object-fit:contain!important}
body.dah-tp-site .dah-tp-header-widget .nav>ul, body.dah-tp-site .dah-tp-header-widget .nav-menu, body.dah-tp-site .dah-tp-header-widget .mobile-nav-menu, body.dah-tp-site .tp-footer-menu ul{list-style:none;margin:0;padding:0}
body.dah-tp-site .dah-tp-header-widget .nav-menu{display:flex;align-items:center;gap:22px;height:70px}
body.dah-tp-site .dah-tp-header-widget .nav-menu>li{position:relative;height:70px;display:flex;align-items:center}
body.dah-tp-site .dah-tp-header-widget .nav-menu>li>a{font-size:15px;font-weight:800;color:#29445A;padding:0;display:flex;align-items:center;height:70px}
body.dah-tp-site .dah-tp-header-widget .nav-menu .menu-item-has-children>a:after{content:"⌄";color:var(--secondary);font-size:15px;margin-inline-start:7px}
body.dah-tp-site .dah-tp-header-widget .nav-menu .sub-menu{position:absolute;top:62px;inset-inline-start:-22px;width:270px;padding:15px;border:1px solid rgba(0,36,81,.10);border-radius:18px;background:#fff;box-shadow:0 26px 70px rgba(0,36,81,.15);opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s;list-style:none;z-index:1300}
body.dah-tp-site .dah-tp-header-widget .nav-menu li:hover>.sub-menu{opacity:1;visibility:visible;transform:none}
body.dah-tp-site .dah-tp-header-widget .nav-menu .sub-menu a{display:block;padding:9px 10px;border-radius:10px;font-size:15px;color:#5d7080;font-weight:700}
body.dah-tp-site .dah-tp-header-widget .nav-menu .sub-menu a:hover{background:#f2f8f6;color:var(--secondary)}
body.dah-tp-site .dah-tp-header-widget .mobile-nav-menu{display:grid}
body.dah-tp-site .dah-tp-header-widget .mobile-nav-menu li{border-bottom:1px solid var(--line)}
body.dah-tp-site .dah-tp-header-widget .mobile-nav-menu a{display:block;padding:14px 0;font-weight:800;color:var(--primary)}
body.dah-tp-site .dah-tp-header-widget .mobile-nav-menu .sub-menu{list-style:none;padding-inline-start:16px}
body.dah-tp-site .dah-tp-header-widget .mobile-nav-menu .sub-menu a{font-size:15px;color:#6a7b86;padding:9px 0}
body.dah-tp-site .tp-footer-menu .footer-menu-list{display:grid;gap:11px;list-style:none;margin:0;padding:0}
body.dah-tp-site .tp-footer-menu .footer-menu-list a{font-size:15px;color:#98ACB8;display:flex;align-items:center;gap:7px}
body.dah-tp-site .tp-footer-menu .footer-menu-list a:before{content:"";width:5px;height:5px;border-radius:50%;background:rgba(201,158,107,.65);flex:none}
body.dah-tp-site .tp-footer-menu .sub-menu{list-style:none;padding:5px 12px 0;margin:0;display:grid;gap:7px}
body.dah-tp-site .dah-forminator-shortcode{padding:24px 28px 28px}
body.dah-tp-site .dah-form-placeholder{min-height:170px;border:1px dashed rgba(0,36,81,.18);border-radius:18px;background:#f8fbfb;display:grid;place-items:center;text-align:center;padding:28px;color:#71818b;font-size:15px}
body.dah-tp-site .dah-forminator-shell .forminator-ui.forminator-custom-form{margin:0!important}
body.dah-tp-site .dah-forminator-shell .forminator-row{margin-bottom:14px!important}
body.dah-tp-site .dah-forminator-shell .forminator-label{font-family:"Almarai",sans-serif!important;font-size:15px!important;font-weight:800!important;color:#51666f!important;margin-bottom:8px!important}
body.dah-tp-site .dah-forminator-shell input.forminator-input, body.dah-tp-site .dah-forminator-shell textarea.forminator-textarea, body.dah-tp-site .dah-forminator-shell select.forminator-select2+span .selection .select2-selection{border:1px solid rgba(0,36,81,.11)!important;border-radius:15px!important;background:#f8fbfb!important;color:var(--primary)!important;font-family:"Almarai",sans-serif!important;box-shadow:none!important}
body.dah-tp-site .dah-forminator-shell input.forminator-input{min-height:52px!important;padding:0 14px!important}
body.dah-tp-site .dah-forminator-shell textarea.forminator-textarea{padding:14px!important}
body.dah-tp-site .dah-forminator-shell .forminator-button-submit{min-height:50px!important;border-radius:15px!important;background:var(--secondary)!important;color:#fff!important;font-family:"Almarai",sans-serif!important;font-weight:800!important;padding:0 26px!important;box-shadow:0 13px 28px rgba(0,103,84,.20)!important}
body.dah-tp-site .dah-tp-industries [data-tp-industry-image]{transition:opacity .22s ease}
body.dah-tp-site .dah-tp-quicknav{contain:layout style}
@media (max-width:1120px){body.dah-tp-site .dah-tp-header-widget .nav-menu{display:none}}
@media (max-width:640px){body.dah-tp-site .dah-forminator-shortcode{padding:20px 18px 22px}
body.dah-tp-site .hero-float-stage .float-scene:not(.active){display:none}}

/* ===== v1.0.3 — ICON RELIABILITY / POLYLANG SVG HARDENING ===== */
body.dah-tp-site .lang-switch-icon{
  position:relative!important;
  overflow:visible!important;
  flex:none!important;
}
body.dah-tp-site .lang-switch-icon svg{
  display:block!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  color:var(--secondary)!important;
  overflow:visible!important;
  pointer-events:none!important;
}
body.dah-tp-site .lang-switch-icon svg circle,
body.dah-tp-site .lang-switch-icon svg path{
  vector-effect:non-scaling-stroke;
}
/* Browser-safe fallback globe. It sits behind the SVG, so the switch still has
   a visible icon if a security layer/theme strips inline SVG downstream. */
body.dah-tp-site .lang-switch-icon:before{
  content:"";
  position:absolute;
  inset:6px;
  border:1.4px solid currentColor;
  border-radius:50%;
  opacity:.24;
  pointer-events:none;
}
body.dah-tp-site .header-cta-icon svg,
body.dah-tp-site .menu-btn-svg,
body.dah-tp-site .hero-text-link-icon svg,
body.dah-tp-site .footer-phone-icon svg{
  display:block!important;
  width:19px!important;
  height:19px!important;
  flex:none!important;
  overflow:visible!important;
  pointer-events:none!important;
}
body.dah-tp-site .menu-btn{color:var(--primary)!important}
body.dah-tp-site .menu-btn-svg{width:21px!important;height:21px!important}
body.dah-tp-site .menu-btn i{display:none!important}
body.dah-tp-site .hero-text-link-icon{
  display:inline-grid!important;
  place-items:center!important;
  width:22px!important;
  height:22px!important;
  color:var(--secondary)!important;
  font-style:normal!important;
}
body.dah-tp-site .footer-phone-icon{
  display:grid!important;
  place-items:center!important;
}
body.dah-tp-site .footer-phone-icon svg{width:17px!important;height:17px!important}
/* Inline SVGs inside widget UI should inherit a reliable stroke color rather
   than depend on an icon font or Elementor's internal eicons. */
body.dah-tp-site .cert-view-btn svg,
body.dah-tp-site .form-premium-icon svg,
body.dah-tp-site .jump-label-icon svg,
body.dah-tp-site .header-cta-icon svg{
  visibility:visible!important;
  opacity:1!important;
}

/* ===== v1.0.9 — PRODUCTION RUNTIME / ZERO-SCROLL-WORK ENGINE =====
   This final layer intentionally consolidates the old v1.0.6–v1.0.8 runtime
   patches. Navigation state is driven by IntersectionObserver in JS, not by
   scroll handlers. Visual effects here avoid live backdrop sampling. */

/* Infrastructure heading + overlay layering. */
body.dah-tp-site .infra-section-head{position:relative!important;z-index:3!important}
body.dah-tp-site .infra-section-head h2,
body.dah-tp-site .infra-section-head>p{
  display:block!important;visibility:visible!important;opacity:1!important
}
body.dah-tp-site .infra-stage:after{z-index:1!important;pointer-events:none!important}
body.dah-tp-site .infra-stage>img{position:relative;z-index:0}
body.dah-tp-site .infra-copy{z-index:2!important}
body.dah-tp-site .infra-copy .infra-title{
  display:block!important;visibility:visible!important;opacity:1!important;
  position:relative!important;z-index:3!important
}

/* Quick navigation: normal in-flow state. Elementor ancestors never control
   the fixed state because JS portals the shell to body only when needed. */
body.dah-tp-site .elementor-widget-dah-tp-quick-nav,
body.dah-tp-site .elementor-widget-dah-tp-quick-nav>.elementor-widget-container{
  overflow:visible!important;transform:none!important;contain:none!important
}
body.dah-tp-site .dah-tp-quicknav-sentinel{
  display:block!important;width:100%!important;height:1px!important;
  margin:0!important;padding:0!important;border:0!important;pointer-events:none!important
}
body.dah-tp-site .dah-tp-quicknav-placeholder{
  display:block!important;width:100%!important;height:0;margin:0!important;
  padding:0!important;border:0!important;pointer-events:none!important
}
body.dah-tp-site .jump-shell.dah-tp-quicknav:not(.tp-quicknav-fixed),
body.dah-tp-site.jump-stuck .jump-shell.dah-tp-quicknav:not(.tp-quicknav-fixed){
  position:relative!important;inset:auto!important;top:auto!important;
  left:auto!important;right:auto!important;width:auto!important;
  z-index:1090!important;contain:none!important
}
body.dah-tp-site .jump-shell.dah-tp-quicknav.tp-quicknav-fixed,
body.dah-tp-site.jump-stuck .jump-shell.dah-tp-quicknav.tp-quicknav-fixed{
  position:fixed!important;inset:auto 0 auto 0!important;
  top:var(--tp-quicknav-fixed-top,94px)!important;width:100%!important;
  max-width:none!important;margin:0!important;z-index:1190!important;
  pointer-events:none!important;transform:none!important;contain:none!important;
  transition:none!important
}
body.dah-tp-site .jump-shell.dah-tp-quicknav.tp-quicknav-fixed .jump,
body.dah-tp-site .jump-shell.dah-tp-quicknav.tp-quicknav-fixed .jump-in,
body.dah-tp-site .jump-shell.dah-tp-quicknav.tp-quicknav-fixed a{pointer-events:auto!important}
body.dah-tp-site .jump-in{
  overscroll-behavior-inline:contain!important;
  scrollbar-width:none!important;
  -webkit-overflow-scrolling:touch
}
body.dah-tp-site .jump-in::-webkit-scrollbar{display:none!important}
body.dah-tp-site .jump a{touch-action:manipulation!important}
body.elementor-editor-active.dah-tp-site .jump-shell.dah-tp-quicknav,
body.elementor-editor-active.dah-tp-site .jump-shell.dah-tp-quicknav.tp-quicknav-fixed{
  position:relative!important;top:auto!important;inset:auto!important
}

/* Fixed/sticky and translucent UI never samples page pixels behind it. This
   removes one of the largest repaint costs on long Elementor documents. */
body.dah-tp-site .header,
body.dah-tp-site .header-in,
body.dah-tp-site .lang-switch,
body.dah-tp-site .jump,
body.dah-tp-site .jump-in,
body.dah-tp-site .btn-glass,
body.dah-tp-site .media-float,
body.dah-tp-site .eng-caption,
body.dah-tp-site .fire-stamp,
body.dah-tp-site .contract-badge,
body.dah-tp-site .license-card,
body.dah-tp-site .hero-float-logo,
body.dah-tp-site .hero-float-note,
body.dah-tp-site .hero-company-signature,
body.dah-tp-site .float-card figcaption small,
body.dah-tp-site .modal-backdrop{
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important
}
body.dah-tp-site .header-in{background:rgba(255,255,255,.97)!important}
body.dah-tp-site .lang-switch{background:rgba(255,255,255,.97)!important}
body.dah-tp-site .jump-in{
  background:linear-gradient(135deg,rgba(255,255,255,.975),rgba(246,250,251,.955))!important;
  box-shadow:0 10px 28px rgba(0,36,81,.09)!important
}
body.dah-tp-site .media-float,
body.dah-tp-site .contract-badge{background:rgba(255,255,255,.97)!important}
body.dah-tp-site .eng-caption{background:rgba(0,24,57,.92)!important}
body.dah-tp-site .fire-stamp{background:rgba(0,23,47,.92)!important}
body.dah-tp-site .hero-float-logo{background:rgba(255,255,255,.98)!important}
body.dah-tp-site .hero-float-note{background:rgba(245,250,251,.98)!important}

/* Decorative blur fields become ordinary gradients. */
body.dah-tp-site .permit:before{
  filter:none!important;opacity:1!important;
  background:radial-gradient(circle,rgba(201,158,107,.13) 0%,rgba(201,158,107,.055) 40%,rgba(201,158,107,0) 72%)!important
}
body.dah-tp-site .footer-cta-panel:after{
  filter:none!important;
  background:radial-gradient(circle,rgba(0,103,84,.20) 0%,rgba(0,103,84,.08) 42%,rgba(0,103,84,0) 72%)!important
}
body.dah-tp-site .hero-float-glow{filter:none!important;opacity:1!important}
body.dah-tp-site .hero-float-glow.glow-a{
  background:radial-gradient(circle,rgba(0,103,84,.16),rgba(0,103,84,0) 70%)!important
}
body.dah-tp-site .hero-float-glow.glow-b{
  background:radial-gradient(circle,rgba(201,158,107,.18),rgba(201,158,107,0) 70%)!important
}

/* Existing hero floating motion is paused whenever the hero is off-screen.
   Mobile avoids continuous transforms entirely. */
body.dah-tp-site [data-tp-hero] .float-card,
body.dah-tp-site [data-tp-hero] .hero-float-logo{
  animation-play-state:paused!important;will-change:auto!important
}
body.dah-tp-site [data-tp-hero].tp-hero-motion-active .float-card,
body.dah-tp-site [data-tp-hero].tp-hero-motion-active .hero-float-logo{
  animation-play-state:running!important
}

/* Allow the browser to skip rendering heavy fixed-height media blocks until
   they approach the viewport. Layout dimensions stay stable because these
   modules already have explicit heights in the approved design. */
@supports (content-visibility:auto){
  body.dah-tp-site:not(.elementor-editor-active) .service-media,
  body.dah-tp-site:not(.elementor-editor-active) .contract-media,
  body.dah-tp-site:not(.elementor-editor-active) .eng-visual,
  body.dah-tp-site:not(.elementor-editor-active) .fire-media,
  body.dah-tp-site:not(.elementor-editor-active) .infra-stage,
  body.dah-tp-site:not(.elementor-editor-active) .accom-media,
  body.dah-tp-site:not(.elementor-editor-active) .landscape-media,
  body.dah-tp-site:not(.elementor-editor-active) .project-media,
  body.dah-tp-site:not(.elementor-editor-active) .article-main,
  body.dah-tp-site:not(.elementor-editor-active) .article-small,
  body.dah-tp-site:not(.elementor-editor-active) .industry-display{
    content-visibility:auto!important;
    contain-intrinsic-size:auto 600px
  }
}

/* Avoid permanent compositor allocations for ordinary page content. Reveal
   animations use the Web Animations API only when an item enters the viewport. */
body.dah-tp-site .client,
body.dah-tp-site .client-logo-demo,
body.dah-tp-site .service-media,
body.dah-tp-site .contract-media,
body.dah-tp-site .fire-media,
body.dah-tp-site .infra-stage,
body.dah-tp-site .eng-visual,
body.dah-tp-site .accom-media,
body.dah-tp-site .project-media,
body.dah-tp-site .request-grid,
body.dah-tp-site .request-copy,
body.dah-tp-site .form-premium,
body.dah-tp-site .footer *{will-change:auto!important}

@media(max-width:900px){
  body.dah-tp-site [data-tp-hero] .float-card,
  body.dah-tp-site [data-tp-hero] .hero-float-logo{
    animation:none!important;transform:none!important
  }
  body.dah-tp-site .jump-shell.dah-tp-quicknav.tp-quicknav-fixed{
    top:var(--tp-quicknav-fixed-top,86px)!important;padding:4px 0 8px!important
  }
  body.dah-tp-site .jump-in{box-shadow:0 8px 22px rgba(0,36,81,.08)!important}
}
@media(max-width:640px){
  body.dah-tp-site .jump-shell.dah-tp-quicknav.tp-quicknav-fixed{
    top:var(--tp-quicknav-fixed-top,80px)!important;padding:3px 0 7px!important
  }
  body.dah-tp-site .infra-section-head{gap:12px!important}
}
@media(prefers-reduced-motion:reduce){
  body.dah-tp-site [data-tp-hero] .float-card,
  body.dah-tp-site [data-tp-hero] .hero-float-logo{animation:none!important}
}

/* ===== v1.0.10 — INFRASTRUCTURE CONTENT CONTRAST FIX =====
   The approved infrastructure composition places Arabic copy on the right.
   Older CSS darkened the opposite side of the image, reducing contrast on
   bright photography. Keep the existing Elementor Overlay Darkness control;
   only correct the gradient direction and text legibility. */
body.dah-tp-site .infra-stage:after{
  background:
    linear-gradient(to left,
      rgba(0,24,57,.92) 0%,
      rgba(0,24,57,.82) 22%,
      rgba(0,24,57,.58) 43%,
      rgba(0,24,57,.26) 62%,
      rgba(0,24,57,.08) 78%,
      rgba(0,24,57,0) 100%),
    linear-gradient(to top,
      rgba(0,24,57,.48) 0%,
      rgba(0,24,57,.13) 42%,
      rgba(0,24,57,0) 72%)!important;
}
html[dir="ltr"] body.dah-tp-site .infra-stage:after{
  background:
    linear-gradient(to right,
      rgba(0,24,57,.92) 0%,
      rgba(0,24,57,.82) 22%,
      rgba(0,24,57,.58) 43%,
      rgba(0,24,57,.26) 62%,
      rgba(0,24,57,.08) 78%,
      rgba(0,24,57,0) 100%),
    linear-gradient(to top,
      rgba(0,24,57,.48) 0%,
      rgba(0,24,57,.13) 42%,
      rgba(0,24,57,0) 72%)!important;
}
body.dah-tp-site .infra-copy .kicker,
body.dah-tp-site .infra-copy h2,
body.dah-tp-site .infra-copy>p{
  text-shadow:0 2px 14px rgba(0,18,42,.42)!important;
}
body.dah-tp-site .infra-copy .kicker{color:#eef7f4!important}
body.dah-tp-site .infra-copy>p{color:rgba(255,255,255,.91)!important}
body.dah-tp-site .infra-list span{
  color:#fff!important;
  background:rgba(0,36,81,.30)!important;
  border-color:rgba(255,255,255,.23)!important;
  text-shadow:0 1px 8px rgba(0,18,42,.30)!important;
}

@media(max-width:640px){
  body.dah-tp-site .infra-stage:after,
  html[dir="ltr"] body.dah-tp-site .infra-stage:after{
    background:
      linear-gradient(to top,
        rgba(0,24,57,.94) 0%,
        rgba(0,24,57,.84) 30%,
        rgba(0,24,57,.48) 57%,
        rgba(0,24,57,.12) 78%,
        rgba(0,24,57,0) 100%)!important;
  }
}

/* ===== v1.0.11 — CALM REVEAL MOTION =====
   Reveal motion is driven by one-shot WAAPI animations in JS. Keep fixed UI
   visually stable and avoid transition rules fighting the entrance animation. */
body.dah-tp-site .header-in,
body.dah-tp-site .jump-in{
  animation:none!important;
}
@media(prefers-reduced-motion:reduce){
  body.dah-tp-site [data-tp-reveal-bound="1"]{
    opacity:1!important;
    translate:none!important;
    scale:none!important;
  }
}
\n\n/* ===== v1.0.12 — SLOW / STABLE REVEAL SAFETY =====\n   JS applies only individual translate + opacity to off-screen nodes. This keeps\n   Elementor transforms intact and prevents fixed navigation from participating. */\nbody.dah-tp-site .header [data-tp-reveal-bound],\nbody.dah-tp-site .jump-shell [data-tp-reveal-bound]{\n  opacity:1!important;\n  translate:none!important;\n}\n@media(prefers-reduced-motion:reduce){\n  body.dah-tp-site [data-tp-reveal-prepared="1"]{\n    opacity:1!important;\n    translate:none!important;\n  }\n}\n

/* ===== v1.1.1 — ISOLATED MOBILE HEADER / TYPOGRAPHY FLOOR ===== */
/* Keep Terra Pulse microcopy at 15px minimum even when Elementor or the theme
   outputs smaller typography values later in the cascade. */
body.dah-tp-site .elementor-widget[class*="elementor-widget-dah-tp-"] small,
body.dah-tp-site .elementor-widget[class*="elementor-widget-dah-tp-"] label,
body.dah-tp-site .elementor-widget[class*="elementor-widget-dah-tp-"] input,
body.dah-tp-site .elementor-widget[class*="elementor-widget-dah-tp-"] textarea,
body.dah-tp-site .elementor-widget[class*="elementor-widget-dah-tp-"] select,
body.dah-tp-site .elementor-widget[class*="elementor-widget-dah-tp-"] button,
body.dah-tp-site .elementor-widget[class*="elementor-widget-dah-tp-"] figcaption,
body.dah-tp-site .elementor-widget[class*="elementor-widget-dah-tp-"] summary,
body.dah-tp-site .elementor-widget[class*="elementor-widget-dah-tp-"] .kicker,
body.dah-tp-site .elementor-widget[class*="elementor-widget-dah-tp-"] .meta,
body.dah-tp-site .elementor-widget[class*="elementor-widget-dah-tp-"] [class*="label"],
body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu a,
body.dah-tp-site .dah-tp-header-widget .tp-mobile-menu a{
  font-size:15px!important;
}
body.dah-tp-site .elementor-widget[class*="elementor-widget-dah-tp-"] input::placeholder,
body.dah-tp-site .elementor-widget[class*="elementor-widget-dah-tp-"] textarea::placeholder{
  font-size:15px!important;
}

/* Desktop accessibility remains isolated to this widget. */
body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu .sub-menu a{line-height:1.55;padding:10px 12px}
body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
body.dah-tp-site .dah-tp-header-widget a:focus-visible,
body.dah-tp-site .dah-tp-header-widget button:focus-visible{
  outline:3px solid rgba(0,103,84,.28)!important;
  outline-offset:3px!important;
}
body.dah-tp-site .dah-tp-header-widget .tp-mobile-backdrop{display:none}
body.dah-tp-site .dah-tp-header-widget .tp-mobile-close,
body.dah-tp-site .dah-tp-header-widget .tp-mobile-submenu-toggle{font:inherit}

/* Mobile header uses only prefixed state/classes. This deliberately avoids generic
   body.menu-open / .open / .submenu-open hooks that can trigger Blocksy or other
   off-canvas systems and were the source of the mobile collision. */
@media (max-width:900px){
  html{--header-h:78px}
  body.dah-tp-site.dah-tp-menu-open{overflow:hidden!important;overscroll-behavior:none!important}

  body.dah-tp-site .dah-tp-header-widget.tp-site-header{
    position:fixed!important;inset:0 0 auto!important;z-index:1200!important;
    width:100%!important;height:78px!important;padding:8px 0 0!important;margin:0!important;
    border:0!important;background:transparent!important;box-shadow:none!important;
    pointer-events:none!important;overflow:visible!important;
    -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
    transition:none!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-header-wrap{
    width:calc(100% - 24px)!important;max-width:1280px!important;height:62px!important;
    margin:0 auto!important;padding:0!important;pointer-events:auto!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-header-inner,
  body.dah-tp-site.page-scrolled .dah-tp-header-widget.tp-site-header .tp-header-inner{
    box-sizing:border-box!important;width:100%!important;height:62px!important;min-height:62px!important;
    margin:0!important;padding:0 10px!important;display:flex!important;align-items:center!important;
    justify-content:space-between!important;gap:8px!important;overflow:hidden!important;
    border:1px solid rgba(0,36,81,.08)!important;border-radius:18px!important;
    background:#fff!important;box-shadow:0 10px 30px rgba(0,36,81,.09)!important;
    -webkit-backdrop-filter:none!important;backdrop-filter:none!important;transition:none!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-header-desktop-nav{display:none!important}
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-header-brand{
    flex:1 1 auto!important;min-width:0!important;width:auto!important;max-width:172px!important;height:46px!important;
    margin:0!important;padding:0!important;display:flex!important;align-items:center!important;overflow:hidden!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-header-brand img{
    display:block!important;width:auto!important;max-width:100%!important;height:auto!important;max-height:46px!important;
    object-fit:contain!important;object-position:center!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-header-actions{
    flex:0 0 auto!important;min-width:0!important;margin:0!important;margin-inline-start:auto!important;padding:0!important;
    display:flex!important;align-items:center!important;gap:7px!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .header-cta{display:none!important}
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-header-actions>.lang-switch{
    box-sizing:border-box!important;width:42px!important;min-width:42px!important;height:42px!important;
    margin:0!important;padding:0!important;display:grid!important;place-items:center!important;
    border:1px solid rgba(0,36,81,.08)!important;border-radius:13px!important;
    background:#f6faf9!important;color:var(--primary)!important;box-shadow:none!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-header-actions>.lang-switch strong{display:none!important}
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-menu-toggle{
    box-sizing:border-box!important;display:grid!important;place-items:center!important;flex:0 0 44px!important;
    width:44px!important;min-width:44px!important;height:44px!important;margin:0!important;padding:0!important;
    border:0!important;border-radius:14px!important;background:var(--primary)!important;color:#fff!important;
    box-shadow:none!important;cursor:pointer!important;-webkit-appearance:none!important;appearance:none!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-menu-toggle .menu-btn-svg{
    display:block!important;width:22px!important;height:22px!important;color:#fff!important;
  }

  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-backdrop{
    display:block!important;position:fixed!important;inset:0!important;z-index:20000!important;
    width:100vw!important;height:100vh!important;height:100dvh!important;margin:0!important;padding:0!important;
    background:rgba(0,22,48,.46)!important;opacity:0!important;visibility:hidden!important;
    pointer-events:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;
    transition:opacity .18s ease,visibility .18s step-end!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-backdrop.is-tp-open{
    opacity:1!important;visibility:visible!important;pointer-events:auto!important;
    transition:opacity .18s ease,visibility 0s!important;
  }

  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-drawer{
    box-sizing:border-box!important;display:flex!important;flex-direction:column!important;position:fixed!important;
    z-index:20010!important;top:0!important;right:0!important;bottom:auto!important;left:auto!important;
    width:min(90vw,390px)!important;max-width:390px!important;height:100vh!important;height:100dvh!important;max-height:none!important;
    margin:0!important;padding:0!important;overflow:hidden!important;overscroll-behavior:contain!important;
    border:0!important;border-left:1px solid rgba(0,36,81,.08)!important;border-radius:24px 0 0 24px!important;
    background:#fff!important;box-shadow:-18px 0 52px rgba(0,25,55,.18)!important;
    opacity:1!important;visibility:hidden!important;pointer-events:none!important;
    transform:translate3d(102%,0,0)!important;will-change:transform!important;
    -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
    transition:transform .22s cubic-bezier(.22,.61,.36,1),visibility .22s step-end!important;
  }
  html[dir="ltr"] body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-drawer{
    right:auto!important;left:0!important;border-left:0!important;border-right:1px solid rgba(0,36,81,.08)!important;
    border-radius:0 24px 24px 0!important;box-shadow:18px 0 52px rgba(0,25,55,.18)!important;
    transform:translate3d(-102%,0,0)!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-drawer.is-tp-open,
  html[dir="ltr"] body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-drawer.is-tp-open{
    visibility:visible!important;pointer-events:auto!important;transform:translate3d(0,0,0)!important;
    transition:transform .22s cubic-bezier(.22,.61,.36,1),visibility 0s!important;
  }

  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-head{
    box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:space-between!important;
    flex:0 0 auto!important;gap:12px!important;margin:0!important;
    padding:calc(18px + env(safe-area-inset-top)) 16px 15px!important;
    border:0!important;border-bottom:1px solid rgba(0,36,81,.08)!important;background:#fff!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-heading{
    min-width:0!important;margin:0!important;padding:0!important;display:grid!important;gap:3px!important;text-align:start!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-heading>span{
    margin:0!important;padding:0!important;font-family:"El Messiri",sans-serif!important;font-size:20px!important;
    font-weight:700!important;line-height:1.3!important;color:var(--primary)!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-heading>small{
    display:block!important;margin:0!important;padding:0!important;font-size:15px!important;font-weight:700!important;
    line-height:1.5!important;letter-spacing:0!important;color:#70818c!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-head-actions{
    flex:0 0 auto!important;margin:0!important;padding:0!important;display:flex!important;align-items:center!important;gap:8px!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-head .lang-switch,
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-close{
    box-sizing:border-box!important;width:42px!important;min-width:42px!important;height:42px!important;margin:0!important;padding:0!important;
    display:grid!important;place-items:center!important;border:1px solid rgba(0,36,81,.09)!important;border-radius:13px!important;
    background:#f7faf9!important;color:var(--primary)!important;box-shadow:none!important;cursor:pointer!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-close svg{display:block!important;width:21px!important;height:21px!important}

  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-scroll{
    box-sizing:border-box!important;min-height:0!important;flex:1 1 auto!important;width:100%!important;
    margin:0!important;padding:10px 12px 16px!important;overflow-y:auto!important;overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;scrollbar-width:thin!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-menu,
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-menu ul{
    box-sizing:border-box!important;width:100%!important;margin:0!important;padding:0!important;list-style:none!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-menu{
    display:grid!important;gap:5px!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-menu li{
    box-sizing:border-box!important;position:relative!important;width:100%!important;margin:0!important;padding:0!important;border:0!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-menu>li>a{
    box-sizing:border-box!important;width:100%!important;min-height:52px!important;margin:0!important;padding:13px 14px!important;
    display:flex!important;align-items:center!important;justify-content:flex-start!important;
    border:1px solid transparent!important;border-radius:14px!important;background:transparent!important;box-shadow:none!important;
    color:#173b55!important;font-size:16px!important;font-weight:800!important;line-height:1.5!important;text-align:start!important;
    text-decoration:none!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-menu>li.menu-item-has-children>a{padding-inline-end:58px!important}
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-menu>li.current-menu-item>a,
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-menu>li.current-menu-ancestor>a{
    color:var(--secondary)!important;background:#eef7f4!important;border-color:rgba(0,103,84,.10)!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-menu>li>a:active{background:#f1f7f6!important}

  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-submenu-toggle{
    box-sizing:border-box!important;position:absolute!important;z-index:2!important;inset-block-start:6px!important;inset-inline-end:6px!important;
    width:40px!important;min-width:40px!important;height:40px!important;margin:0!important;padding:0!important;
    display:grid!important;place-items:center!important;border:0!important;border-radius:12px!important;
    background:#f4f8f8!important;color:var(--primary)!important;box-shadow:none!important;cursor:pointer!important;
    -webkit-appearance:none!important;appearance:none!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-submenu-toggle svg{
    display:block!important;width:20px!important;height:20px!important;transition:transform .16s ease!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-submenu-open>.tp-mobile-submenu-toggle{
    background:#e8f4f0!important;color:var(--secondary)!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-submenu-open>.tp-mobile-submenu-toggle svg{transform:rotate(180deg)!important}

  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-menu .sub-menu{
    display:grid!important;gap:2px!important;max-height:0!important;margin:0 8px!important;padding:0!important;overflow:hidden!important;
    opacity:0!important;border:0!important;border-inline-start:2px solid rgba(0,103,84,.12)!important;background:transparent!important;
    transition:max-height .22s ease,opacity .15s ease,margin .15s ease!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-menu .tp-submenu-open>.sub-menu{
    max-height:900px!important;margin:5px 8px 10px!important;padding:4px 0!important;opacity:1!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-menu .sub-menu a{
    box-sizing:border-box!important;width:100%!important;min-height:44px!important;margin:0!important;padding:10px 13px!important;
    display:flex!important;align-items:center!important;justify-content:flex-start!important;border:0!important;border-radius:10px!important;
    background:transparent!important;box-shadow:none!important;color:#5b7180!important;font-size:15px!important;font-weight:700!important;
    line-height:1.55!important;text-align:start!important;text-decoration:none!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-menu .sub-menu .menu-item-has-children>a{padding-inline-end:55px!important}
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-menu .sub-menu .current-menu-item>a{
    background:#f3f8f7!important;color:var(--secondary)!important;
  }

  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-footer{
    box-sizing:border-box!important;flex:0 0 auto!important;width:100%!important;margin:0!important;
    padding:13px 13px calc(13px + env(safe-area-inset-bottom))!important;border:0!important;
    border-top:1px solid rgba(0,36,81,.08)!important;background:#fff!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-cta{
    box-sizing:border-box!important;width:100%!important;min-height:54px!important;margin:0!important;padding:0 17px!important;
    display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;
    border:0!important;border-radius:15px!important;background:var(--primary)!important;color:#fff!important;box-shadow:none!important;
    font-size:16px!important;font-weight:800!important;line-height:1.4!important;text-decoration:none!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-cta>span:last-child{
    width:32px!important;height:32px!important;display:grid!important;place-items:center!important;flex:0 0 32px!important;
    border-radius:10px!important;background:rgba(255,255,255,.12)!important;font-size:18px!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-menu a,
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-cta,
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-close,
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-submenu-toggle{
    -webkit-tap-highlight-color:transparent!important;
  }
}

@media (max-width:640px){
  html{--header-h:76px}
  body.dah-tp-site .dah-tp-header-widget.tp-site-header{height:76px!important;padding-top:7px!important}
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-header-wrap{width:calc(100% - 18px)!important;height:60px!important}
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-header-inner,
  body.dah-tp-site.page-scrolled .dah-tp-header-widget.tp-site-header .tp-header-inner{
    height:60px!important;min-height:60px!important;padding-inline:8px!important;border-radius:16px!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-header-brand{max-width:148px!important;height:44px!important}
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-header-brand img{max-height:44px!important}
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-header-actions>.lang-switch{
    width:40px!important;min-width:40px!important;height:40px!important;border-radius:12px!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-menu-toggle{
    flex-basis:42px!important;width:42px!important;min-width:42px!important;height:42px!important;border-radius:13px!important;
  }
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-drawer{width:min(92vw,380px)!important;max-width:380px!important}
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-head{padding-inline:14px!important}
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-scroll{padding-inline:10px!important}
}

@media (max-width:380px){
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-header-brand{max-width:128px!important}
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-header-actions{gap:5px!important}
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-drawer{width:94vw!important;max-width:94vw!important}
}

@media (prefers-reduced-motion:reduce){
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-drawer,
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-backdrop,
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-submenu-toggle svg,
  body.dah-tp-site .dah-tp-header-widget.tp-site-header .tp-mobile-menu .sub-menu{transition:none!important}
}

/* Requested quick-navigation geometry. Keep this final so old responsive layers
   cannot reduce the link height or horizontal padding. */
body.dah-tp-site .jump a{
  height:44px!important;
  padding:0 11px!important;
  border-radius:15px!important;
  border:1px solid transparent!important;
  background:rgba(255,255,255,.28)!important;
  color:#5c707c!important;
  font-size:15px!important;
  font-weight:800!important;
  box-shadow:none!important;
}
body.dah-tp-site .jump a:hover,
body.dah-tp-site .jump a.active{
  height:44px!important;
  padding:0 11px!important;
  border-radius:15px!important;
  font-size:15px!important;
  font-weight:800!important;
}

/* ===== v1.2.0 — NATIVE FORMINATOR FORM UI / ACCESSIBILITY / MOBILE ===== */
body.dah-tp-site .dah-forminator-shell .dah-forminator-shortcode{
  padding:24px 28px 28px;
}
body.dah-tp-site .dah-forminator-shell .forminator-ui,
body.dah-tp-site .dah-forminator-shell .forminator-ui *{
  box-sizing:border-box;
}
body.dah-tp-site .dah-forminator-shell .forminator-ui.forminator-custom-form{
  margin:0!important;
  font-family:"Almarai",sans-serif!important;
  font-size:15px!important;
  line-height:1.65;
}
body.dah-tp-site .dah-forminator-shell .forminator-row{
  margin-bottom:16px!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-field{
  margin:0!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-label,
body.dah-tp-site .dah-forminator-shell .forminator-description,
body.dah-tp-site .dah-forminator-shell .forminator-error-message,
body.dah-tp-site .dah-forminator-shell .forminator-checkbox-label,
body.dah-tp-site .dah-forminator-shell .forminator-radio-label,
body.dah-tp-site .dah-forminator-shell .forminator-consent__label,
body.dah-tp-site .dah-forminator-shell .forminator-pagination-footer,
body.dah-tp-site .dah-forminator-shell .forminator-pagination-steps{
  font-family:"Almarai",sans-serif!important;
  font-size:15px!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-label{
  display:block!important;
  margin:0 0 8px!important;
  color:#51666f!important;
  font-weight:800!important;
  line-height:1.55!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-required{
  color:#b94b50!important;
}
body.dah-tp-site .dah-forminator-shell input.forminator-input,
body.dah-tp-site .dah-forminator-shell textarea.forminator-textarea,
body.dah-tp-site .dah-forminator-shell select.forminator-select,
body.dah-tp-site .dah-forminator-shell .forminator-select2 .select2-selection,
body.dah-tp-site .dah-forminator-shell .forminator-multiselect{
  width:100%!important;
  border:1px solid rgba(0,36,81,.13)!important;
  border-radius:15px!important;
  background:#f8fbfb!important;
  color:var(--primary)!important;
  font-family:"Almarai",sans-serif!important;
  font-size:15px!important;
  font-weight:700!important;
  box-shadow:none!important;
  outline:0!important;
  transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease!important;
}
body.dah-tp-site .dah-forminator-shell input.forminator-input,
body.dah-tp-site .dah-forminator-shell select.forminator-select,
body.dah-tp-site .dah-forminator-shell .forminator-select2 .select2-selection{
  min-height:52px!important;
}
body.dah-tp-site .dah-forminator-shell input.forminator-input,
body.dah-tp-site .dah-forminator-shell select.forminator-select{
  padding:0 14px!important;
}
body.dah-tp-site .dah-forminator-shell textarea.forminator-textarea{
  min-height:126px!important;
  padding:13px 14px!important;
  line-height:1.75!important;
  resize:vertical!important;
}
body.dah-tp-site .dah-forminator-shell input.forminator-input::placeholder,
body.dah-tp-site .dah-forminator-shell textarea.forminator-textarea::placeholder{
  color:#8a9aa3!important;
  opacity:1!important;
  font-size:15px!important;
}
body.dah-tp-site .dah-forminator-shell input.forminator-input:focus,
body.dah-tp-site .dah-forminator-shell textarea.forminator-textarea:focus,
body.dah-tp-site .dah-forminator-shell select.forminator-select:focus,
body.dah-tp-site .dah-forminator-shell .forminator-select2.select2-container--open .select2-selection{
  border-color:rgba(0,103,84,.52)!important;
  background:#fff!important;
  box-shadow:0 0 0 4px rgba(0,103,84,.07)!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-select2 .select2-selection{
  display:flex!important;
  align-items:center!important;
  padding-inline:14px 40px!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-select2 .select2-selection__rendered,
body.dah-tp-site .dah-forminator-shell .forminator-select2 .select2-selection__placeholder{
  color:var(--primary)!important;
  font-family:"Almarai",sans-serif!important;
  font-size:15px!important;
  font-weight:700!important;
  line-height:1.45!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-select2 .select2-selection__arrow{
  top:50%!important;
  transform:translateY(-50%)!important;
  inset-inline-end:12px!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-description{
  margin-top:7px!important;
  color:#7b8d96!important;
  line-height:1.7!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-error-message{
  margin-top:7px!important;
  color:#a83d43!important;
  font-weight:700!important;
  line-height:1.55!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-has_error input.forminator-input,
body.dah-tp-site .dah-forminator-shell .forminator-has_error textarea.forminator-textarea,
body.dah-tp-site .dah-forminator-shell .forminator-has_error .select2-selection{
  border-color:rgba(185,75,80,.55)!important;
  background:#fffafa!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-checkbox,
body.dah-tp-site .dah-forminator-shell .forminator-radio{
  min-height:24px!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-checkbox-box,
body.dah-tp-site .dah-forminator-shell .forminator-radio-bullet{
  width:22px!important;
  height:22px!important;
  border-color:rgba(0,36,81,.20)!important;
  background:#fff!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-checkbox input:checked + .forminator-checkbox-box,
body.dah-tp-site .dah-forminator-shell .forminator-radio input:checked + .forminator-radio-bullet{
  border-color:var(--secondary)!important;
  background:var(--secondary)!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-button,
body.dah-tp-site .dah-forminator-shell .forminator-button-submit,
body.dah-tp-site .dah-forminator-shell .forminator-button-next,
body.dah-tp-site .dah-forminator-shell .forminator-button-back{
  min-height:50px!important;
  border:1px solid transparent!important;
  border-radius:15px!important;
  padding:0 24px!important;
  font-family:"Almarai",sans-serif!important;
  font-size:15px!important;
  font-weight:800!important;
  line-height:1.2!important;
  box-shadow:none!important;
  transition:background-color .16s ease,border-color .16s ease,transform .16s ease!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-button-submit,
body.dah-tp-site .dah-forminator-shell .forminator-button-next{
  background:var(--secondary)!important;
  color:#fff!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-button-back{
  background:#eef5f4!important;
  border-color:rgba(0,103,84,.10)!important;
  color:var(--secondary)!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-button-submit:hover,
body.dah-tp-site .dah-forminator-shell .forminator-button-next:hover{
  background:#005849!important;
  transform:translateY(-1px);
}
body.dah-tp-site .dah-forminator-shell .forminator-button:focus-visible,
body.dah-tp-site .dah-forminator-shell input:focus-visible,
body.dah-tp-site .dah-forminator-shell textarea:focus-visible,
body.dah-tp-site .dah-forminator-shell select:focus-visible{
  outline:3px solid rgba(0,103,84,.20)!important;
  outline-offset:2px!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-response-message{
  margin:0 0 18px!important;
  border-radius:15px!important;
  padding:14px 16px!important;
  font-family:"Almarai",sans-serif!important;
  font-size:15px!important;
  line-height:1.7!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-response-message.forminator-success{
  border:1px solid rgba(0,103,84,.16)!important;
  background:#f2faf7!important;
  color:#245e50!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-response-message.forminator-error,
body.dah-tp-site .dah-forminator-shell .forminator-response-message.forminator-warning{
  border:1px solid rgba(185,75,80,.16)!important;
  background:#fff8f8!important;
  color:#8a3439!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-pagination-progress{
  height:7px!important;
  border-radius:999px!important;
  overflow:hidden!important;
  background:#e7efef!important;
}
body.dah-tp-site .dah-forminator-shell .forminator-pagination-progress .forminator-progress-bar{
  background:var(--secondary)!important;
}
body.dah-tp-site .forminator-select-dropdown .select2-results__option,
body.dah-tp-site .forminator-select-dropdown .select2-search__field{
  font-family:"Almarai",sans-serif!important;
  font-size:15px!important;
}
body.dah-tp-site .forminator-select-dropdown{
  border:1px solid rgba(0,36,81,.12)!important;
  border-radius:15px!important;
  overflow:hidden!important;
  box-shadow:0 14px 34px rgba(0,36,81,.12)!important;
}
html[dir="rtl"] body.dah-tp-site .dah-forminator-shell .forminator-ui{
  direction:rtl!important;
  text-align:right!important;
}
html[dir="ltr"] body.dah-tp-site .dah-forminator-shell .forminator-ui{
  direction:ltr!important;
  text-align:left!important;
}
@media (max-width:640px){
  body.dah-tp-site .dah-forminator-shell .dah-forminator-shortcode{padding:20px 18px 22px}
  body.dah-tp-site .dah-forminator-shell .forminator-row{margin-bottom:14px!important}
  body.dah-tp-site .dah-forminator-shell .forminator-row > .forminator-col{width:100%!important;max-width:100%!important;flex:0 0 100%!important;margin-bottom:12px!important}
  body.dah-tp-site .dah-forminator-shell .forminator-row > .forminator-col:last-child{margin-bottom:0!important}
  body.dah-tp-site .dah-forminator-shell .forminator-button-submit,
  body.dah-tp-site .dah-forminator-shell .forminator-button-next,
  body.dah-tp-site .dah-forminator-shell .forminator-button-back{width:100%!important}
}


/* ===== v1.2.1 — SMOOTH SAME-PAGE ANCHORS =====
   Native fragment navigation uses the browser compositor and the existing
   scroll-padding offset. No scroll event listener or animation library is used. */
html{scroll-behavior:smooth!important}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}

/* ===== v1.2.2 — HEADER MEGA MENU / CHEVRON FIX =====
   Header-only patch. WordPress menu hierarchy stays the editable source of
   truth: top-level trigger -> column headings -> column links. */
@media (min-width:1121px){
  /* The old glyph used the same pseudo-element as the hover underline. Keep
     both jobs separate so the Services icon is a real CSS chevron, not a font
     character that can render as "v" or change between fonts. */
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>li>a::before{
    content:"";
    position:absolute;
    bottom:13px;
    inset-inline-start:0;
    width:0;
    height:2px;
    border:0;
    border-radius:999px;
    background:var(--secondary);
    transition:width .22s ease;
    pointer-events:none;
  }
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>li:hover>a::before,
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>li:focus-within>a::before,
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>li.current-menu-item>a::before,
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>li.current-menu-ancestor>a::before{
    width:100%;
  }
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>li>a::after{
    content:none;
  }
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>li.menu-item-has-children>a::after{
    content:"";
    position:static;
    display:block;
    flex:0 0 7px;
    width:7px;
    height:7px;
    margin:0 1px 4px 8px;
    border:0;
    border-right:2px solid var(--secondary);
    border-bottom:2px solid var(--secondary);
    background:transparent;
    transform:rotate(45deg);
    transform-origin:center;
    transition:transform .2s ease;
    pointer-events:none;
  }
  html[dir="rtl"] body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>li.menu-item-has-children>a::after{
    margin:0 8px 4px 1px;
  }
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>li.menu-item-has-children:hover>a::after,
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>li.menu-item-has-children:focus-within>a::after{
    width:7px;
    transform:rotate(225deg) translate(-1px,-1px);
  }

  /* Mega panel. Only the configured top-level menu item receives
     .tp-mega-parent, so ordinary dropdowns keep their existing behavior. */
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent{
    position:relative;
  }
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent>.tp-mega-menu{
    box-sizing:border-box;
    position:absolute;
    top:62px;
    inset-inline-start:auto;
    inset-inline-end:-160px;
    z-index:1400;
    width:min(var(--tp-mega-width,930px),calc(100vw - 40px));
    min-width:min(760px,calc(100vw - 40px));
    padding:25px 27px 27px;
    display:grid;
    grid-template-columns:minmax(210px,232px) repeat(3,minmax(0,1fr));
    grid-auto-flow:row;
    align-items:stretch;
    gap:25px 28px;
    list-style:none;
    margin:0;
    border:1px solid rgba(0,36,81,.10);
    border-radius:23px;
    background:var(--tp-mega-panel-bg,#fff);
    box-shadow:0 28px 70px rgba(0,36,81,.16);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(10px);
    transform-origin:top center;
    transition:opacity .18s ease,transform .18s ease,visibility .18s step-end;
  }
  html[dir="ltr"] body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent>.tp-mega-menu{
    inset-inline-start:-160px;
    inset-inline-end:auto;
  }
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent:hover>.tp-mega-menu,
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent:focus-within>.tp-mega-menu{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0);
    transition:opacity .18s ease,transform .18s ease,visibility 0s;
  }

  body.dah-tp-site .dah-tp-header-widget .tp-mega-menu>li{
    box-sizing:border-box;
    min-width:0;
    margin:0;
    padding:0;
    border:0;
    background:transparent;
  }
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent>.tp-mega-menu a::before,
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent>.tp-mega-menu a::after{
    content:none!important;
    display:none!important;
    width:0!important;
    height:0!important;
    margin:0!important;
    border:0!important;
    background:none!important;
  }

  /* Related-services card. */
  body.dah-tp-site .dah-tp-header-widget .tp-mega-menu>.tp-mega-intro{
    display:block;
    min-height:194px;
  }
  body.dah-tp-site .dah-tp-header-widget .tp-mega-intro-inner{
    box-sizing:border-box;
    width:100%;
    height:100%;
    min-height:194px;
    padding:22px 24px;
    border:0;
    border-radius:18px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
    gap:12px;
    background:var(--tp-mega-card-bg,var(--primary,#002451));
    color:#fff;
    text-align:start;
    text-decoration:none;
    box-shadow:none;
  }
  body.dah-tp-site .dah-tp-header-widget a.tp-mega-intro-inner:hover,
  body.dah-tp-site .dah-tp-header-widget a.tp-mega-intro-inner:focus-visible{
    background:var(--tp-mega-card-bg,var(--primary,#002451));
    color:#fff;
    transform:translateY(-2px);
  }
  body.dah-tp-site .dah-tp-header-widget .tp-mega-intro-label{
    display:block;
    margin:0;
    color:var(--tp-mega-accent,#e79b57);
    font-size:15px;
    line-height:1.5;
    font-weight:800;
  }
  body.dah-tp-site .dah-tp-header-widget .tp-mega-intro-title{
    display:block;
    margin:0;
    color:#fff;
    font-family:"El Messiri",sans-serif;
    font-size:23px;
    line-height:1.55;
    font-weight:800;
  }

  /* Each direct child with children is one editable WordPress-menu column. */
  body.dah-tp-site .dah-tp-header-widget .tp-mega-menu>.menu-item-has-children>a,
  body.dah-tp-site .dah-tp-header-widget .tp-mega-menu>.tp-mega-generated-group>.tp-mega-group-title{
    box-sizing:border-box;
    display:block;
    width:100%;
    height:auto;
    min-height:0;
    margin:0;
    padding:2px 0 14px;
    border:0;
    border-bottom:1px solid rgba(0,36,81,.13);
    border-radius:0;
    background:transparent;
    color:var(--tp-mega-heading,var(--primary,#002451));
    font-family:"El Messiri",sans-serif;
    font-size:17px;
    line-height:1.45;
    font-weight:800;
    text-decoration:none;
    cursor:default;
  }
  body.dah-tp-site .dah-tp-header-widget .tp-mega-menu>li>.sub-menu{
    position:static;
    inset:auto;
    box-sizing:border-box;
    width:100%;
    min-width:0;
    margin:0;
    padding:10px 0 0;
    display:grid;
    gap:2px;
    list-style:none;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:none;
    transition:none;
  }
  body.dah-tp-site .dah-tp-header-widget .tp-mega-menu>li>.sub-menu>li{
    margin:0;
    padding:0;
    border:0;
  }
  body.dah-tp-site .dah-tp-header-widget .tp-mega-menu>li>.sub-menu a{
    position:relative;
    display:block;
    width:100%;
    height:auto;
    margin:0;
    padding:8px 0;
    border:0;
    border-radius:7px;
    background:transparent;
    color:var(--tp-mega-link,#5d7080);
    font-size:15px;
    line-height:1.55;
    font-weight:700;
    text-decoration:none;
    transition:color .16s ease,transform .16s ease;
  }
  body.dah-tp-site .dah-tp-header-widget .tp-mega-menu>li>.sub-menu a:hover,
  body.dah-tp-site .dah-tp-header-widget .tp-mega-menu>li>.sub-menu a:focus-visible{
    background:transparent;
    color:var(--tp-mega-link-hover,var(--secondary,#006754));
    transform:translateX(-2px);
  }
  html[dir="ltr"] body.dah-tp-site .dah-tp-header-widget .tp-mega-menu>li>.sub-menu a:hover,
  html[dir="ltr"] body.dah-tp-site .dah-tp-header-widget .tp-mega-menu>li>.sub-menu a:focus-visible{
    transform:translateX(2px);
  }

  /* Graceful fallback when the Services submenu is still flat. It remains a
     large editable panel instead of falling back to the old narrow dropdown. */
  body.dah-tp-site .dah-tp-header-widget .tp-mega-menu:not(:has(>.menu-item-has-children))>li:not(.tp-mega-intro)>a{
    display:block;
    height:auto;
    padding:10px 2px;
    border:0;
    border-bottom:1px solid rgba(0,36,81,.08);
    color:#5d7080;
    font-size:15px;
    line-height:1.55;
    font-weight:700;
  }
}

@media (prefers-reduced-motion:reduce){
  body.dah-tp-site .dah-tp-header-widget .tp-mega-menu,
  body.dah-tp-site .dah-tp-header-widget .tp-mega-menu a,
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>li>a::before,
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>li.menu-item-has-children>a::after{
    transition:none!important;
  }
}

/* ===== v1.2.4 — CENTERED HEADER MEGA MENU / LIVE EDITOR COPY =====
   Header-only geometry patch. The panel is anchored to the viewport center so
   its position is independent from the Services trigger location and RTL/LTR.
   Empty auto-fit tracks collapse, preventing unused blank columns when the
   WordPress menu currently contains fewer service groups. */
@media (min-width:1121px){
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent>.tp-mega-menu,
  html[dir="ltr"] body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent>.tp-mega-menu{
    position:fixed!important;
    top:calc(var(--header-h,94px) - 17px)!important;
    left:50vw!important;
    right:auto!important;
    inset-inline-start:auto!important;
    inset-inline-end:auto!important;
    width:min(var(--tp-mega-width,930px),calc(100vw - 40px))!important;
    min-width:0!important;
    grid-template-columns:minmax(210px,232px) repeat(auto-fit,minmax(180px,1fr))!important;
    transform:translate3d(-50%,10px,0)!important;
    transform-origin:top center!important;
  }
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent:hover>.tp-mega-menu,
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent:focus-within>.tp-mega-menu{
    transform:translate3d(-50%,0,0)!important;
  }
  body.dah-tp-site.page-scrolled .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent>.tp-mega-menu{
    top:calc(var(--header-h,94px) - 19px)!important;
  }
}

/* ===== v1.2.6 — VIEWPORT-SAFE MEGA MENU CENTERING =====
   Elementor/theme ancestors may create a containing block for fixed descendants
   through transform/filter. JavaScript measures the real containing-block
   offset and writes --tp-mega-viewport-left, so the panel is centered against
   the visible viewport in both RTL and LTR without re-parenting menu nodes. */
@media (min-width:1121px){
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent>.tp-mega-menu,
  html[dir="ltr"] body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent>.tp-mega-menu{
    position:fixed!important;
    left:var(--tp-mega-viewport-left,20px)!important;
    right:auto!important;
    inset-inline-start:auto!important;
    inset-inline-end:auto!important;
    transform:translate3d(0,10px,0)!important;
    transform-origin:top center!important;
  }
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent:hover>.tp-mega-menu,
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent:focus-within>.tp-mega-menu{
    transform:translate3d(0,0,0)!important;
  }
}

/* ===== v1.2.7 — TRUE CENTERED MEGA MENU / HEADER STACKING =====
   The mega panel stays absolutely positioned inside the Services menu item.
   JavaScript supplies the physical viewport-center coordinate relative to that
   item, avoiding fixed-position containing-block bugs in Elementor and RTL.
   Header stacking is also elevated above the body-portaled quick navigation. */
@media (min-width:1121px){
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent>.tp-mega-menu,
  html[dir="ltr"] body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent>.tp-mega-menu{
    position:absolute!important;
    top:62px!important;
    left:var(--tp-mega-local-center,50%)!important;
    right:auto!important;
    inset-inline-start:auto!important;
    inset-inline-end:auto!important;
    width:min(var(--tp-mega-width,930px),calc(100vw - 40px))!important;
    min-width:0!important;
    grid-template-columns:minmax(210px,232px) repeat(auto-fit,minmax(180px,1fr))!important;
    z-index:15020!important;
    transform:translate3d(-50%,10px,0)!important;
    transform-origin:top center!important;
  }
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent:hover>.tp-mega-menu,
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent:focus-within>.tp-mega-menu{
    transform:translate3d(-50%,0,0)!important;
  }
  body.dah-tp-site.page-scrolled .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent>.tp-mega-menu{
    top:58px!important;
  }
  body.dah-tp-site .dah-tp-header-widget .tp-header-wrap,
  body.dah-tp-site .dah-tp-header-widget .tp-header-inner,
  body.dah-tp-site .dah-tp-header-widget .tp-header-desktop-nav,
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu,
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent{
    overflow:visible!important;
  }
}

/* Keep the complete Elementor header stacking chain above the quick-nav shell,
   which is portaled directly under <body> while sticky. */
body.dah-tp-site .dah-tp-header-widget.tp-site-header{
  z-index:15000!important;
}
body.dah-tp-site .elementor-widget-dah-tp-header,
body.dah-tp-site .elementor-widget-dah-tp-header>.elementor-widget-container{
  position:relative;
  z-index:15000!important;
  overflow:visible!important;
}
@supports selector(.elementor-element:has(.dah-tp-header-widget)){
  body.dah-tp-site .elementor-element:has(.dah-tp-header-widget){
    z-index:15000!important;
    overflow:visible!important;
  }
}
body.dah-tp-site .jump-shell.dah-tp-quicknav.tp-quicknav-fixed,
body.dah-tp-site.jump-stuck .jump-shell.dah-tp-quicknav.tp-quicknav-fixed{
  z-index:1190!important;
}


/* ===== v1.2.8 — USER-VERIFIED MEGA OFFSET / STACKING / HOVER CONTRAST =====
   Final header-only override. Keep this block last in the cascade. */
@media (min-width:1121px){
  /* Preserve the same horizontal offset while the panel is hidden so opening
     it does not animate sideways from an older centering transform. */
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent>.tp-mega-menu{
    transform:translate3d(29%,10px,0)!important;
  }

  /* Exact user-verified open position. */
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent:hover>.tp-mega-menu,
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent:focus-within>.tp-mega-menu{
    transform:translate3d(29%,0,0)!important;
  }

  /* The generic .nav-menu .sub-menu a:hover rule is more specific than the
     original intro-card rule and was washing the dark card to #f2f8f6.
     Lock only the intro card hover/focus state to its Elementor-controlled
     background and readable foreground colors. */
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent>.tp-mega-menu>.tp-mega-intro>.tp-mega-intro-inner,
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent>.tp-mega-menu>.tp-mega-intro>a.tp-mega-intro-inner:hover,
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent>.tp-mega-menu>.tp-mega-intro>a.tp-mega-intro-inner:focus-visible{
    background:var(--tp-mega-card-bg,var(--primary,#002451))!important;
    color:#fff!important;
    opacity:1!important;
    filter:none!important;
    -webkit-filter:none!important;
  }
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent>.tp-mega-menu>.tp-mega-intro .tp-mega-intro-label{
    color:var(--tp-mega-accent,#e79b57)!important;
  }
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent>.tp-mega-menu>.tp-mega-intro .tp-mega-intro-title{
    color:#fff!important;
  }

  /* Header and mega panel must stay above the body-portaled quick navigation. */
  body.dah-tp-site .dah-tp-header-widget.tp-site-header{
    z-index:200000!important;
    isolation:isolate;
  }
  body.dah-tp-site .dah-tp-header-widget .tp-mega-menu{
    z-index:200100!important;
  }
  body.dah-tp-site .tp-header-stack-context{
    z-index:199900!important;
    overflow:visible!important;
  }
  body.dah-tp-site .tp-header-stack-context.tp-header-stack-position{
    position:relative!important;
  }
  body.dah-tp-site .jump-shell.dah-tp-quicknav,
  body.dah-tp-site .jump-shell.dah-tp-quicknav.tp-quicknav-fixed,
  body.dah-tp-site.jump-stuck .jump-shell.dah-tp-quicknav.tp-quicknav-fixed{
    z-index:1000!important;
  }
}

/* ===== v1.2.9 — MEGA MENU EXPLICIT TRIGGER HIT AREA =====
   Do not use the top-level LI :hover state to open the mega panel. An
   absolutely positioned descendant participates in the ancestor hover chain,
   which can make the menu appear while the pointer is visually outside the
   Services trigger. JavaScript now adds .tp-mega-open only after the direct
   top-level Services link is intentionally entered/focused. */
@media (min-width:1121px){
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent>.tp-mega-menu{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translate3d(29%,10px,0)!important;
  }

  /* Neutralize all older generic :hover/:focus-within open rules unless the
     explicit state class has already been set by the real trigger. */
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent:not(.tp-mega-open):hover>.tp-mega-menu,
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent:not(.tp-mega-open):focus-within>.tp-mega-menu{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translate3d(29%,10px,0)!important;
    transition:opacity .18s ease,transform .18s ease,visibility .18s step-end!important;
  }

  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent.tp-mega-open>.tp-mega-menu,
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent.tp-mega-open:hover>.tp-mega-menu,
  body.dah-tp-site .dah-tp-header-widget .tp-desktop-menu>.tp-mega-parent.tp-mega-open:focus-within>.tp-mega-menu{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate3d(29%,0,0)!important;
    transition:opacity .18s ease,transform .18s ease,visibility 0s!important;
  }
}
