/*
Theme Name: Nesma Contracting
Author: Nesma
Author URI: https://wa.me/201010337544
Description: قالب مقاولات مستقل للإنشاءات والمستودعات والمصانع والترميمات والأرضيات والحدائق، مع معرض مشاريع وفيديوهات قابلة للفهرسة، مبني على نسمة 1.7.1.
Version: 0.4.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: nesma-contracting
Tags: rtl-language-support, custom-logo, custom-menu, featured-images, blog
License: Proprietary
*/
:root{--nesma-accent:#163a53;--nesma-accent-dark:#102b3d;--nesma-secondary:#c69b3c;--nesma-text:#171717;--nesma-muted:#6b7280;--nesma-bg:#fff;--nesma-soft:#f5f7f6;--nesma-border:#e5e7eb;--nesma-radius:16px;--nesma-shadow:0 10px 32px rgba(0,0,0,.055);--nesma-width:1180px;--nesma-header-bg:#fff;--nesma-nav-bg:#f5efe5;--nesma-nav-active:#eadcc6;--nesma-button-bg:#163a53;--nesma-footer-bg:#111827;--nesma-footer-text:#d1d5db;--nesma-logo-width:220px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--nesma-bg);color:var(--nesma-text);font-family:Tahoma,Arial,sans-serif;line-height:1.8}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}.container{width:min(var(--nesma-width),calc(100% - 32px));margin-inline:auto}svg{width:1em;height:1em;fill:currentColor;display:block}
.site-header{background:var(--nesma-header-bg);border-bottom:1px solid var(--nesma-border);position:relative;z-index:30}.header-top{min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:26px;padding:14px 0}.branding{display:flex;align-items:center;min-width:0}.brand-link{display:inline-flex;align-items:center}.custom-logo{max-height:82px;max-width:var(--nesma-logo-width);width:auto}.site-title{font-weight:800;font-size:24px}.header-contact{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.header-contact-link{display:flex;align-items:center;gap:10px;padding:8px 13px;border:1px solid var(--nesma-border);border-radius:14px;min-width:145px}.header-contact-link .icon{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--nesma-soft);color:var(--nesma-accent);font-size:18px}.header-contact-link small{display:block;color:var(--nesma-muted);font-size:11px;line-height:1.25}.header-contact-link b{display:block;font-size:13px;line-height:1.5;direction:ltr}.header-contact-link.wa{background:var(--nesma-accent);color:#fff;border-color:var(--nesma-accent)}.header-contact-link.wa .icon{background:rgba(255,255,255,.14);color:#fff}.header-contact-link.wa small{color:rgba(255,255,255,.78)}
.main-nav{border-top:1px solid var(--nesma-border);background:var(--nesma-nav-bg)}.nav-wrap{display:flex;align-items:center;min-height:58px}.menu-toggle{display:none;background:var(--nesma-button-bg);color:#fff;border:0;border-radius:10px;padding:9px 12px;font-size:16px;cursor:pointer}.primary-menu{display:flex;align-items:center;list-style:none;margin:0;padding:0;gap:2px;flex-wrap:wrap}.primary-menu a{display:block;padding:13px 15px;font-weight:800;border-radius:10px}.primary-menu a:hover,.primary-menu .current-menu-item>a{color:var(--nesma-accent);background:var(--nesma-soft)}.primary-menu .current-menu-item>a{box-shadow:inset 0 -2px 0 var(--nesma-secondary)}
.hero{padding:30px 0 18px}.hero-box{background:linear-gradient(135deg,#fff 20%,var(--nesma-soft));border:1px solid var(--nesma-border);border-radius:24px;padding:34px;box-shadow:var(--nesma-shadow);display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);gap:32px;align-items:center}.hero-kicker,.section-label{display:inline-block;color:var(--nesma-accent);font-weight:800;font-size:13px;margin-bottom:8px}.hero h1{margin:0 0 8px;font-size:clamp(32px,5vw,52px);line-height:1.3}.hero p{margin:0;color:var(--nesma-muted);font-size:17px;max-width:760px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.btn{display:inline-flex;align-items:center;gap:8px;border-radius:12px;padding:10px 16px;font-weight:800;border:1px solid var(--nesma-accent)}.btn svg{font-size:18px}.btn-primary{background:var(--nesma-button-bg);color:#fff}.btn-outline{background:#fff;color:var(--nesma-accent)}.hero-services{display:grid;gap:10px}.hero-service{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--nesma-border);border-radius:14px;padding:14px 15px;font-weight:800;transition:.2s ease}.hero-service:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.05);border-color:color-mix(in srgb,var(--nesma-accent) 25%,#fff)}.service-dot{width:10px;height:10px;border-radius:50%;background:var(--nesma-secondary);flex:0 0 auto}.service-arrow{margin-right:auto;color:var(--nesma-accent);font-size:21px}
.section{padding:34px 0}.service-section:nth-of-type(even){background:#fbfcfb}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:19px}.section-head>div{min-width:0}.section-title{font-size:29px;margin:0;line-height:1.4;position:relative;padding-right:14px}.section-title:before{content:"";position:absolute;right:0;top:7px;bottom:7px;width:4px;border-radius:4px;background:var(--nesma-secondary)}.section-more{color:var(--nesma-accent);font-weight:800;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.section-more svg{font-size:20px}.posts-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{border:1px solid var(--nesma-border);border-radius:var(--nesma-radius);overflow:hidden;background:#fff;box-shadow:0 5px 18px rgba(0,0,0,.035);transition:.2s ease}.card:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(0,0,0,.075)}.card-thumb{aspect-ratio:16/10;background:var(--nesma-soft);overflow:hidden}.card-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.card:hover .card-thumb img{transform:scale(1.025)}.card-body{padding:15px}.card-title{margin:0 0 7px;font-size:18px;line-height:1.6}.card-excerpt{margin:0;color:var(--nesma-muted);font-size:14px}.empty-section,.setup-note{border:1px dashed var(--nesma-border);background:var(--nesma-soft);border-radius:14px;padding:20px;color:var(--nesma-muted)}
.contact-strip{padding:18px 0 0}.contact-strip-inner{background:var(--nesma-accent);color:#fff;border-radius:20px;padding:22px 26px;display:flex;justify-content:space-between;align-items:center;gap:20px}.contact-strip-inner span{display:block;font-size:13px;opacity:.82}.contact-strip-inner strong{display:block;font-size:20px}.contact-strip-actions{display:flex;gap:9px;flex-wrap:wrap}.contact-strip-actions a{background:#fff;color:var(--nesma-accent);font-weight:800;padding:9px 16px;border-radius:11px}.contact-strip-actions a.wa{background:#111827;color:#fff}
.content-wrap{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:34px;padding:34px 0}.main-content{min-width:0}.sidebar{min-width:0}.single-article{max-width:860px}.entry-header{padding:5px 0 12px}.entry-category{display:inline-block;color:var(--nesma-accent);background:var(--nesma-soft);border:1px solid var(--nesma-border);font-weight:800;font-size:13px;padding:5px 11px;border-radius:999px;margin-bottom:12px}.widget-box{border:1px solid var(--nesma-border);border-radius:var(--nesma-radius);padding:18px;background:#fff;margin-bottom:18px;box-shadow:0 6px 22px rgba(0,0,0,.035)}.widget-box h3{margin:0 0 14px;font-size:20px;padding-bottom:10px;border-bottom:2px solid var(--nesma-soft);position:relative}.widget-box h3:after{content:"";position:absolute;right:0;bottom:-2px;width:54px;height:2px;background:var(--nesma-secondary)}.entry-title{font-size:clamp(30px,3.2vw,46px);line-height:1.45;margin:0 0 12px;letter-spacing:-.2px}.entry-meta{color:var(--nesma-muted);font-size:14px;margin-bottom:10px}.entry-featured{border-radius:18px;overflow:hidden;margin:10px 0 24px;background:var(--nesma-soft);border:1px solid var(--nesma-border)}.entry-featured img{width:100%;max-height:560px;object-fit:cover}.entry-content{font-size:18px;line-height:2.05;max-width:820px}.entry-content p{margin:0 0 20px}.entry-content h2{font-size:30px;margin:34px 0 14px}.entry-content h3{font-size:24px;margin:28px 0 12px}.entry-content h2,.entry-content h3{line-height:1.5}.entry-content a{color:var(--nesma-accent);text-decoration:underline}.sidebar-posts{display:grid;gap:13px}.sidebar-post{display:grid;grid-template-columns:78px minmax(0,1fr);gap:11px;align-items:center;padding-bottom:13px;border-bottom:1px solid var(--nesma-border)}.sidebar-post:last-child{border-bottom:0;padding-bottom:0}.sidebar-thumb{width:78px;aspect-ratio:1/1;border-radius:10px;overflow:hidden;background:var(--nesma-soft)}.sidebar-thumb img{width:100%;height:100%;object-fit:cover}.sidebar-post-title{font-size:14px;font-weight:800;line-height:1.6}.category-widget p{font-size:14px;color:var(--nesma-muted);margin:0 0 12px}.sidebar-more{color:var(--nesma-accent);font-weight:800;display:inline-flex;align-items:center;gap:4px}.related-posts{margin-top:44px;padding-top:28px;border-top:1px solid var(--nesma-border)}.compact-head{margin-bottom:16px}.related-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.footer{background:var(--nesma-footer-bg);color:#f9fafb;margin-top:44px}.footer-main{display:grid;grid-template-columns:1.45fr 1fr 1fr 1fr;gap:34px;padding:44px 0 32px}.footer h3{margin:0 0 14px;font-size:18px}.footer p,.footer li,.footer a{color:var(--nesma-footer-text)}.footer p{margin:0 0 9px}.footer ul{list-style:none;margin:0;padding:0}.footer li{margin:7px 0}.footer-brand p{max-width:390px}.social-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}.social-links a{width:38px;height:38px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:grid;place-items:center;font-weight:700}.footer-contact{display:inline-flex;align-items:center;gap:8px}.footer-contact svg{font-size:18px}.footer-bottom{border-top:1px solid rgba(255,255,255,.14);padding:14px 0}.footer-bottom-inner{display:flex;justify-content:space-between;gap:16px;align-items:center;font-size:13px;color:var(--nesma-footer-text)}.footer-bottom a{color:#fff;font-weight:700}.designer-credit{unicode-bidi:plaintext}
.float-action{position:fixed;bottom:22px;z-index:90;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;color:#fff;box-shadow:0 8px 24px rgba(0,0,0,.22);border:3px solid #fff}.float-action svg{width:25px;height:25px}.float-call{right:18px;background:var(--nesma-button-bg)}.float-wa{left:18px;background:#16a34a}.float-action:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.26)}.pagination{display:flex;gap:8px;flex-wrap:wrap;margin-top:28px}.pagination .page-numbers{padding:8px 12px;border:1px solid var(--nesma-border);border-radius:9px}.pagination .current{background:var(--nesma-accent);color:#fff;border-color:var(--nesma-accent)}.not-found{padding:70px 0;text-align:center}
@media (max-width:900px){.hero-box{grid-template-columns:1fr}.posts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content-wrap{grid-template-columns:1fr}.single-article{max-width:none}.article-sidebar{order:2}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-main{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:680px){.container{width:min(100% - 22px,var(--nesma-width))}.header-top{min-height:auto;padding:10px 0}.custom-logo{max-height:58px;max-width:min(var(--nesma-logo-width),220px)}.header-contact{margin-right:auto}.header-contact-link{min-width:auto;padding:8px}.header-contact-link>span:last-child{display:none}.header-contact-link .icon{width:36px;height:36px}.nav-wrap{padding:8px 0;display:block;min-height:auto}.menu-toggle{display:inline-flex;align-items:center;gap:6px}.primary-menu{display:none;flex-direction:column;margin-top:8px;align-items:stretch}.primary-menu.is-open{display:flex}.primary-menu a{padding:10px 8px}.hero{padding:18px 0 8px}.hero-box{padding:20px 17px;border-radius:18px;gap:20px}.hero h1{font-size:31px}.hero p{font-size:15px}.hero-actions{margin-top:16px}.hero-services{grid-template-columns:1fr}.section{padding:24px 0}.section-head{align-items:flex-start}.section-title{font-size:23px}.section-more{font-size:13px}.posts-grid{grid-template-columns:1fr}.contact-strip-inner{flex-direction:column;align-items:flex-start;padding:20px}.content-wrap{padding:22px 0}.entry-title{font-size:30px}.entry-featured{border-radius:14px}.entry-content{font-size:17px;line-height:1.95}.entry-content h2{font-size:25px}.entry-content h3{font-size:21px}.related-grid{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr;padding:30px 0 22px;gap:24px}.footer-bottom-inner{flex-direction:column;align-items:flex-start}.float-action{width:50px;height:50px;bottom:14px}.float-call{right:12px}.float-wa{left:12px}}


/* v0.3.1 — stronger single-post layout overrides */
body.single-post .content-wrap.single-layout{display:grid!important;grid-template-columns:minmax(0,1fr) 290px!important;gap:32px!important;align-items:start!important;max-width:1240px!important}
body.single-post .single-article{max-width:820px!important;width:100%!important;margin:0!important}
body.single-post .entry-header{padding:0 0 14px!important}
body.single-post h1.entry-title{font-size:clamp(32px,3vw,44px)!important;line-height:1.35!important;margin:0 0 10px!important;font-weight:800!important;letter-spacing:0!important}
body.single-post .entry-meta{font-size:14px!important;margin-bottom:12px!important}
body.single-post .entry-featured{margin:12px 0 24px!important;border-radius:16px!important;overflow:hidden!important}
body.single-post .entry-featured img{display:block!important;width:100%!important;height:auto!important;max-height:500px!important;object-fit:cover!important}
body.single-post .entry-content{max-width:780px!important;font-size:18px!important;line-height:2!important}
body.single-post .entry-content p{margin-bottom:18px!important}
body.single-post .entry-content h2{font-size:29px!important;line-height:1.5!important;margin:30px 0 12px!important}
body.single-post .entry-content h3{font-size:23px!important;line-height:1.5!important;margin:25px 0 10px!important}
body.single-post .article-sidebar{position:sticky!important;top:24px!important}
body.single-post .widget-box{padding:16px!important;border-radius:16px!important}
body.single-post .widget-box h3{font-size:19px!important}
body.single-post .sidebar-post{grid-template-columns:70px minmax(0,1fr)!important}
body.single-post .sidebar-thumb{width:70px!important;height:70px!important;aspect-ratio:auto!important}
body.single-post .sidebar-post-title{font-size:14px!important;line-height:1.55!important}
@media(max-width:900px){body.single-post .content-wrap.single-layout{grid-template-columns:1fr!important}body.single-post .single-article{max-width:none!important}body.single-post .article-sidebar{position:static!important;top:auto!important}}
@media(max-width:680px){body.single-post h1.entry-title{font-size:29px!important;line-height:1.45!important}body.single-post .entry-content{font-size:17px!important;line-height:1.95!important}body.single-post .entry-featured img{max-height:none!important}}


/* v0.3.2 — definitive article title sizing */
body.single-post .single-article .entry-header h1.entry-title{
  font-size:34px!important;
  line-height:1.5!important;
  font-weight:800!important;
  margin:0 0 10px!important;
  max-width:900px!important;
}
body.single-post .entry-header{margin-bottom:4px!important;}
body.single-post .entry-category{font-size:12px!important;padding:4px 10px!important;}
body.single-post .entry-meta{font-size:13px!important;}
body.single-post .entry-featured{margin-top:8px!important;}
@media(max-width:900px){
  body.single-post .single-article .entry-header h1.entry-title{font-size:31px!important;line-height:1.5!important;}
}
@media(max-width:680px){
  body.single-post .single-article .entry-header h1.entry-title{font-size:26px!important;line-height:1.55!important;}
}

/* v0.3.3 — refined article header */
body.single-post .single-article .entry-header{
  padding:0 0 10px!important;
  margin-bottom:0!important;
}
body.single-post .single-article .entry-header h1.entry-title{
  font-size:30px!important;
  line-height:1.42!important;
  font-weight:800!important;
  letter-spacing:0!important;
  max-width:760px!important;
  margin:0 0 8px!important;
  text-wrap:balance;
}
body.single-post .entry-category{
  font-size:12px!important;
  padding:4px 11px!important;
  margin-bottom:9px!important;
  background:#f7f8f8!important;
}
body.single-post .entry-meta{
  font-size:12.5px!important;
  margin:0 0 8px!important;
  color:#7a808a!important;
}
body.single-post .entry-featured{
  margin:8px 0 22px!important;
}
body.single-post .content-wrap.single-layout{
  gap:28px!important;
}
body.single-post .single-article{
  max-width:800px!important;
}
body.single-post .article-sidebar{
  width:100%!important;
}
@media(max-width:900px){
  body.single-post .single-article .entry-header h1.entry-title{
    font-size:28px!important;
    line-height:1.45!important;
    max-width:100%!important;
  }
}
@media(max-width:680px){
  body.single-post .single-article .entry-header h1.entry-title{
    font-size:24px!important;
    line-height:1.5!important;
  }
  body.single-post .entry-category{font-size:11.5px!important;}
  body.single-post .entry-meta{font-size:12px!important;}
}


/* v0.3.5 — beige navigation + contact page */
.main-nav{
  background:var(--nesma-nav-bg)!important;
  border-top:1px solid #eadfce!important;
  border-bottom:1px solid #eadfce!important;
}
.primary-menu a{
  color:#111827;
}
.primary-menu a:hover,
.primary-menu .current-menu-item>a,
.primary-menu .current_page_item>a{
  background:var(--nesma-nav-active)!important;
  color:#163a53!important;
}
.primary-menu .current-menu-item>a,
.primary-menu .current_page_item>a{
  box-shadow:inset 0 -3px 0 var(--nesma-secondary)!important;
}

.contact-page-wrap{padding:40px 0 52px;}
.contact-page-card{max-width:980px;margin:0 auto;background:#fff;border:1px solid var(--nesma-border);border-radius:22px;padding:32px;box-shadow:0 10px 30px rgba(0,0,0,.04)}
.contact-page-head{margin-bottom:26px}
.contact-page-head h1{font-size:32px;line-height:1.45;margin:0 0 10px}
.contact-page-head p{color:var(--nesma-muted);font-size:17px;line-height:1.9;margin:0}
.contact-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:26px}
.contact-option{display:flex;align-items:center;gap:15px;padding:20px;border:1px solid var(--nesma-border);border-radius:18px;background:#faf8f4}
.contact-option .contact-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:var(--nesma-accent);color:#fff;flex:0 0 48px}
.contact-option .contact-icon svg{width:23px;height:23px;fill:currentColor}
.contact-option small{display:block;color:var(--nesma-muted);font-size:12px;margin-bottom:3px}
.contact-option strong{display:block;font-size:18px;direction:ltr;text-align:right}
.contact-option.wa{background:#f4f8f5}
.contact-page-note{margin-top:24px;padding:18px 20px;border-radius:16px;background:#f5efe5;line-height:1.9}
@media(max-width:680px){
  .main-nav{background:var(--nesma-nav-bg)!important}
  .contact-page-wrap{padding:24px 0 34px}
  .contact-page-card{padding:20px 16px;border-radius:18px}
  .contact-page-head h1{font-size:26px}
  .contact-page-head p{font-size:15.5px}
  .contact-options{grid-template-columns:1fr}
}


/* v0.4.4 — mobile: top header contact only; remove duplicate hero call/WhatsApp buttons */
@media (max-width:680px){
  .hero-actions{display:none!important;}
}

/* v0.4.1 — mobile: only the three service categories as direct buttons */
@media (max-width:680px){
  .main-nav{
    padding:8px 0!important;
    background:var(--nesma-nav-bg)!important;
  }
  .nav-wrap{
    padding:0!important;
    display:block!important;
  }
  .menu-toggle{
    display:none!important;
  }
  .primary-menu{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:7px!important;
    margin:0!important;
    padding:0!important;
    width:100%;
    align-items:stretch!important;
  }
  .primary-menu > li{
    margin:0!important;
    min-width:0;
  }
  .primary-menu > li.menu-home,
  .primary-menu > li.menu-info-page{
    display:none!important;
  }
  .primary-menu > li.menu-service-category{
    display:block!important;
  }
  .primary-menu > li.menu-service-category > a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:44px;
    padding:8px 5px!important;
    background:#fff!important;
    border:1px solid #e6dac7!important;
    border-radius:12px!important;
    box-shadow:0 2px 8px rgba(0,0,0,.025);
    color:var(--nesma-accent)!important;
    font-size:14px!important;
    font-weight:800!important;
    line-height:1.35!important;
    text-align:center!important;
    white-space:nowrap;
  }
  .primary-menu > li.menu-service-category > a:hover,
  .primary-menu > li.menu-service-category.current-menu-item > a{
    background:var(--nesma-nav-active)!important;
    border-color:#d8bd87!important;
    color:#102b3d!important;
    box-shadow:inset 0 -3px 0 var(--nesma-secondary)!important;
  }
}


/* v0.4.4 — cleaner home page: hero removed, articles start directly */
body.home main > .service-section:first-of-type{padding-top:34px;}
@media(max-width:680px){body.home main > .service-section:first-of-type{padding-top:24px;}}

/* v0.4.4 — mobile review: compact home/footer + no empty sidebar block */
@media (max-width:680px){
  /* The home CTA duplicated the header and floating contact actions. */
  body.home .contact-strip{display:none!important;}

  /* Single post: comfortable reading without oversized gaps. */
  body.single-post .content-wrap.single-layout{padding-top:22px!important;gap:18px!important;}
  body.single-post .entry-header{padding-bottom:8px!important;}
  body.single-post .single-article .entry-header h1.entry-title{
    font-size:23px!important;
    line-height:1.55!important;
    font-weight:700!important;
    margin-bottom:7px!important;
  }
  body.single-post .entry-featured{margin:8px 0 18px!important;border-radius:14px!important;}
  body.single-post .entry-content{font-size:17px!important;line-height:2!important;}
  body.single-post .article-sidebar{margin-top:8px!important;}
  body.single-post .widget-box{margin-bottom:12px!important;padding:16px!important;}

  /* Compact footer: identity full width, services + info links side by side. */
  .footer{margin-top:30px!important;}
  .footer-main{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:22px 18px!important;
    padding:28px 0 24px!important;
  }
  .footer-main .footer-brand{
    grid-column:1/-1!important;
  }
  .footer-main .footer-brand p{max-width:none!important;margin-bottom:0!important;}
  .footer-main > div:last-child{
    display:none!important;
  }
  .footer h3{font-size:17px!important;margin-bottom:10px!important;}
  .footer p,.footer li,.footer a{font-size:14px!important;}
  .footer li{margin:5px 0!important;}
  .footer-bottom{padding:12px 0 84px!important;}
  .footer-bottom-inner{
    align-items:center!important;
    text-align:center!important;
    gap:7px!important;
    font-size:12px!important;
  }
  .designer-credit{width:100%!important;}

  /* Floating contact remains visible, but slightly smaller and less intrusive. */
  .float-action{width:48px!important;height:48px!important;bottom:18px!important;border-width:2px!important;}
  .float-action svg{width:22px!important;height:22px!important;}
  .float-call{right:12px!important;}
  .float-wa{left:12px!important;}
}


/* v1.4.0 — portable migration hardening: never inherit visual widgets from an old theme */
body.single-post .article-sidebar .widget_block,
body.single-post .article-sidebar [class*="blocksy"],
body.single-post .article-sidebar [class*="ct-widget"]{display:none!important;}


/* v1.6.2 — official reusable contact page */
.contact-page-wrap{max-width:none;width:100%;padding:42px max(24px,calc((100% - var(--nesma-width))/2)) 54px;background:var(--nesma-accent)}
.contact-page-card{max-width:1180px;margin:0 auto;background:#fff;border:1px solid var(--nesma-border);border-radius:24px;padding:38px 40px;box-shadow:0 10px 30px rgba(0,0,0,.05)}
.contact-page-head h1{font-size:38px;font-weight:800}
.contact-options{gap:22px}
.contact-option{min-height:122px;padding:24px 28px}
.contact-option .contact-icon{width:58px;height:58px;flex-basis:58px;background:var(--nesma-button-bg);color:#fff}
.contact-option .contact-icon svg{width:27px;height:27px}
.contact-option strong{font-size:24px;font-weight:800}
.contact-page-note{font-size:17px;text-align:center}
@media(max-width:680px){
.contact-page-wrap{padding:22px 12px 32px}
.contact-page-card{padding:22px 16px;border-radius:20px}
.contact-page-head h1{font-size:28px}
.contact-option{min-height:96px;padding:18px}
.contact-option strong{font-size:20px}
.contact-page-note{font-size:15px}
}


/* v1.6.4 — lightweight article share bar CSS fix (inline SVG, no icon library) */
.nesma-sharebar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 18px;padding:10px 0;border-bottom:1px solid var(--nesma-border)}
.nesma-share-icons{display:flex;align-items:center;gap:8px}
.nesma-share-btn,.nesma-shortlink{width:38px;height:38px;border:1px solid var(--nesma-border);border-radius:10px;background:#fff;color:var(--nesma-accent);display:inline-flex;align-items:center;justify-content:center;transition:transform .15s ease,background .15s ease}
.nesma-share-btn:hover,.nesma-shortlink:hover{transform:translateY(-1px);background:var(--nesma-soft)}
.nesma-share-btn svg,.nesma-shortlink svg{width:19px;height:19px;fill:currentColor}
.nesma-share-btn.facebook{color:#1877f2}.nesma-share-btn.x{color:#111}.nesma-share-btn.whatsapp{color:#128c7e}.nesma-share-btn.instagram{color:#c13584}
.nesma-shortlink{width:auto;min-width:126px;gap:7px;padding:0 12px;cursor:pointer;font:700 13px Tahoma,Arial,sans-serif;color:var(--nesma-accent);direction:rtl}
@media(max-width:680px){.nesma-sharebar{gap:9px;margin-top:-4px}.nesma-share-icons{gap:6px}.nesma-share-btn{width:35px;height:35px}.nesma-share-btn svg{width:18px;height:18px}.nesma-shortlink{height:35px;min-width:44px;padding:0 9px}.nesma-shortlink span{display:none}}

/* v1.6.5 — share icons start from the right and use native brand colors */
.nesma-sharebar{direction:rtl}
.nesma-share-icons{direction:rtl}
.nesma-share-btn{color:#fff;border-color:transparent}
.nesma-share-btn.facebook{background:#1877f2;color:#fff}
.nesma-share-btn.x{background:#000;color:#fff}
.nesma-share-btn.whatsapp{background:#25d366;color:#fff}
.nesma-share-btn.instagram{background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045);color:#fff}
.nesma-share-btn:hover{background:inherit;filter:brightness(.94)}
.nesma-share-btn.instagram:hover{background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045)}
.nesma-shortlink{direction:rtl}


/* v1.6.7 — lightweight header site search (no external library) */
.header-actions{display:flex;align-items:center;gap:10px;margin-inline-start:auto}
.header-search{position:relative}
.header-search summary{list-style:none;width:44px;height:44px;border:1px solid var(--nesma-border);border-radius:12px;background:#fff;color:var(--nesma-accent);display:grid;place-items:center;cursor:pointer}
.header-search summary::-webkit-details-marker{display:none}
.header-search summary svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.header-search[open] summary{background:var(--nesma-button-bg);color:#fff;border-color:var(--nesma-button-bg)}
.header-search-box{position:absolute;top:calc(100% + 10px);left:0;z-index:120;width:min(360px,calc(100vw - 24px));padding:10px;background:#fff;border:1px solid var(--nesma-border);border-radius:14px;box-shadow:0 12px 30px rgba(0,0,0,.12)}
.header-search-form{display:flex;align-items:center;gap:8px}
.header-search-form input[type=search]{min-width:0;flex:1;height:42px;border:1px solid var(--nesma-border);border-radius:10px;padding:0 12px;font:inherit;outline:none}
.header-search-form input[type=search]:focus{border-color:var(--nesma-accent)}
.header-search-form button{height:42px;border:0;border-radius:10px;padding:0 15px;background:var(--nesma-button-bg);color:#fff;font:700 14px Tahoma,Arial,sans-serif;cursor:pointer}
@media(max-width:680px){.header-actions{gap:7px}.header-search summary{width:42px;height:42px}.header-search-box{position:fixed;top:76px;left:12px;right:12px;width:auto}.header-contact{margin-right:0}}

/* v1.6.8: independent latest posts and site-colored section headers */
.nesma-home-section-head{background:var(--nesma-accent);color:#fff;border-radius:14px;padding:15px 20px;align-items:center;margin-bottom:20px}
.nesma-home-section-head .section-title{color:#fff;padding-right:15px;font-size:clamp(21px,2.5vw,28px)}
.nesma-home-section-head .section-title:before{background:var(--nesma-secondary);top:5px;bottom:5px}
.nesma-home-section-head .section-more{color:#fff;border:1px solid rgba(255,255,255,.45);border-radius:9px;padding:6px 12px;font-size:14px}
.nesma-home-section-head .section-more:hover{background:rgba(255,255,255,.13)}
@media(max-width:680px){.nesma-home-section-head{padding:12px;gap:8px;flex-wrap:wrap}.nesma-home-section-head .section-title{font-size:20px}.nesma-home-section-head .section-more{font-size:12px;padding:5px 8px}}

/* v1.6.9 — compact section bars and prominent green contact icons */
.nesma-home-section-head{padding:8px 15px;border-radius:10px;margin-bottom:15px;min-height:0}
.nesma-home-section-head .section-title{font-size:clamp(19px,2vw,24px);line-height:1.35}
.nesma-home-section-head .section-more{padding:4px 9px;font-size:13px}
.header-contact-link:not(.wa) .icon{background:#16a34a;color:#fff;width:43px;height:43px;font-size:22px}
.header-contact-link .icon svg{width:25px;height:25px}
.header-contact-link.wa .icon{width:43px;height:43px;background:#16a34a;color:#fff}
.float-call{background:#16a34a!important}
.float-call svg{width:30px;height:30px}
.float-wa svg{width:29px;height:29px}
@media(max-width:680px){
.nesma-home-section-head{padding:7px 10px;gap:7px;margin-bottom:13px}
.nesma-home-section-head .section-title{font-size:18px}
.nesma-home-section-head .section-more{padding:3px 7px;font-size:12px}
.header-contact-link .icon,.header-contact-link:not(.wa) .icon,.header-contact-link.wa .icon{width:39px;height:39px}
.float-call svg{width:27px!important;height:27px!important}
.float-wa svg{width:26px!important;height:26px!important}
}

/* v1.7.0 optional homepage services showcase */
.nesma-featured-intro{padding:26px 0 32px;text-align:center;background:var(--nesma-bg)}
.nesma-featured-inner>h1{font-size:clamp(23px,3vw,34px);margin:0 0 6px}
.nesma-featured-inner>p{color:var(--nesma-muted);margin:4px auto 18px;max-width:780px}
.nesma-featured-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:10px 0 26px}
.nesma-featured-actions a{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:9px;background:#e2f2e9;color:#087c40;font-weight:700}
.nesma-featured-actions svg{width:21px;height:21px;fill:currentColor}
.nesma-featured-images{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0 22px}
.nesma-featured-image{border-radius:16px;overflow:hidden;background:var(--nesma-soft)}
.nesma-featured-image img{width:100%;aspect-ratio:1.3;object-fit:cover}
.nesma-featured-inner>h2{font-size:23px;margin:14px 0 2px}
@media(max-width:680px){.nesma-featured-intro{padding:18px 0}.nesma-featured-images{gap:7px}.nesma-featured-image{border-radius:9px}.nesma-featured-image img{aspect-ratio:.85}.nesma-featured-inner>h2{font-size:20px}}

/* Nesma Contracting v0.2 — layers over the original Nesma v1.7.1 CSS */
:root{--nesma-soft:#f7f8f6;--nesma-width:1220px;--nesma-radius:15px}
.contract-hero{padding:36px 0 28px;background:linear-gradient(130deg,#f5f3ec 0%,#fff 70%)}
.contract-hero-inner{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:28px;align-items:center}
.contract-hero-copy{padding:15px 0}.contract-eyebrow{font-size:13px;font-weight:800;color:var(--nesma-accent);display:block;margin-bottom:10px}
.contract-hero h1{font-size:clamp(31px,4vw,50px);line-height:1.35;letter-spacing:-.5px;margin:0 0 18px;font-weight:800}
.contract-hero p{color:#4b5563;font-size:17px;line-height:2;margin:0 0 24px;max-width:650px}
.contract-hero-visual{border-radius:22px;background:linear-gradient(135deg,var(--nesma-accent),#507789);min-height:300px;overflow:hidden;position:relative;box-shadow:0 14px 40px rgba(15,40,45,.13)}
.contract-hero-visual img{width:100%;height:100%;min-height:300px;max-height:460px;object-fit:cover;display:block}
.contract-hero-fallback{padding:36px;color:#fff;min-height:300px;display:flex;flex-direction:column;justify-content:end;background:radial-gradient(circle at 20% 10%,rgba(255,255,255,.16),transparent 55%)}
.contract-hero-fallback strong{font-size:34px;line-height:1.5}.contract-hero-fallback small{font-size:17px;color:rgba(255,255,255,.8)}
.contract-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.contract-actions .btn{border-radius:10px;justify-content:center}.contract-actions svg{width:19px;height:19px}
.contract-section{padding:48px 0}.contract-section:nth-of-type(even){background:#fafbf9}.contract-head{margin-bottom:24px;display:flex;justify-content:space-between;align-items:end;gap:12px}
.contract-head h2{margin:0;font-size:clamp(24px,3vw,32px);line-height:1.4}.contract-head p{margin:4px 0 0;color:#697381;max-width:650px}
.contract-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.contract-service-card{display:block;min-width:0;overflow:hidden;border:1px solid var(--nesma-border);background:#fff;border-radius:17px;box-shadow:0 6px 20px rgba(0,0,0,.045)}
.contract-service-image{height:185px;background:linear-gradient(125deg,#e5e9e5,#faf7ee);display:flex;align-items:center;justify-content:center;overflow:hidden}
.contract-service-image img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.contract-service-card:hover img{transform:scale(1.04)}
.contract-service-placeholder{color:var(--nesma-accent);font-size:20px;font-weight:800;padding:16px;text-align:center}
.contract-service-info{padding:18px}.contract-service-info h3{margin:0 0 6px;font-size:20px;line-height:1.55}.contract-service-info p{margin:0;color:#65707d;font-size:14px;line-height:1.75;min-height:0}
.contract-service-arrow{display:inline-flex;font-size:13px;color:var(--nesma-accent);font-weight:800;margin-top:12px}
.contract-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.contract-gallery-item{display:block;min-width:0;position:relative;overflow:hidden;background:#e6eae7;border-radius:14px;aspect-ratio:4/3}
.contract-gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.contract-gallery-item:hover img{transform:scale(1.05)}
.contract-gallery-caption{position:absolute;inset:auto 0 0;padding:34px 13px 11px;background:linear-gradient(transparent,rgba(12,25,32,.85));color:#fff;font-weight:700;font-size:16px;line-height:1.5}
.contract-mini-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:18px}.contract-mini-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}
.contract-feature-title{margin:0 0 8px;font-size:25px}.contract-feature-desc{color:#687383;margin:0 0 8px}
.contract-cta{padding:26px 0}.contract-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;background:var(--nesma-accent);color:#fff;border-radius:18px;padding:25px 30px}.contract-cta-inner h2{margin:0;font-size:22px}.contract-cta-inner p{margin:3px 0 0;opacity:.84}.contract-cta-inner .btn{background:#fff;color:var(--nesma-accent);border-color:#fff}
.contract-inner-page{padding:32px 0 55px}.contract-page-title{font-size:clamp(28px,3vw,40px);margin:0 0 8px}.contract-page-lede{color:#65707d;margin:0 0 25px}
.contract-pagination{margin-top:30px}.contract-pagination .nav-links{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.contract-pagination .page-numbers{padding:8px 13px;border:1px solid var(--nesma-border);border-radius:9px}.contract-pagination .page-numbers.current{background:var(--nesma-accent);color:#fff}
.contract-empty{border:1px dashed #b9c5ca;border-radius:14px;padding:22px;color:#62727a;background:#f9fbfb}
/* Override original mobile menu restrictions: all construction site pages must be accessible. */
@media(max-width:680px){
  .main-nav{padding:9px 0!important}.nav-wrap{padding:0 16px!important;display:block!important}
  .menu-toggle{display:inline-flex!important;align-items:center;gap:6px}
  .primary-menu{display:none!important;grid-template-columns:1fr!important;gap:3px!important;margin-top:8px!important}
  .primary-menu.is-open{display:grid!important}
  .primary-menu>li,.primary-menu>li.menu-home,.primary-menu>li.menu-info-page,.primary-menu>li.menu-service-category{display:block!important}
  .primary-menu>li>a{display:block!important;background:transparent!important;border:0!important;text-align:right!important;min-height:40px!important;padding:9px 14px!important;font-size:15px!important}
  .contract-hero{padding:22px 0}.contract-hero-inner{grid-template-columns:1fr;gap:18px}.contract-hero h1{font-size:29px}.contract-hero p{font-size:15.5px}
  .contract-hero-visual,.contract-hero-visual img,.contract-hero-fallback{min-height:210px;max-height:320px}
  .contract-section{padding:31px 0}.contract-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
  .contract-service-image{height:128px}.contract-service-info{padding:12px}.contract-service-info h3{font-size:16px}.contract-service-info p{font-size:12.5px}
  .contract-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.contract-gallery-caption{font-size:12px;padding:26px 9px 8px}
  .contract-mini-gallery{gap:7px}.contract-cta-inner{flex-direction:column;text-align:center;padding:21px 14px}
  .contract-head{align-items:center}.contract-head h2{font-size:23px}
}
@media(max-width:390px){.contract-service-grid{grid-template-columns:1fr}.contract-service-image{height:170px}}
/* Nesma Contracting v0.3.0 — Screenshot-matched contracting homepage.
 * Scoped to .contract-home / .contract-home-header so Nesma article templates remain unchanged.
 */
:root{--contract-navy:var(--nesma-accent,#0b203a);--contract-yellow:var(--nesma-secondary,#ffca19);--contract-light:#f4f5f6}
body.home{background:#fff;color:var(--contract-navy)}
body.home .footer{margin-top:0}
body.home .contract-home .container,body.home .contract-home-header .container{width:min(1420px,calc(100% - 56px));margin-inline:auto}
/* Single overlay header, with brand on the right and menu on the left. */
body.home .contract-home-header{position:absolute;z-index:75;top:0;inset-inline:0;background:transparent;border:0;color:#fff;width:100%;box-shadow:none}
body.home.admin-bar .contract-home-header{top:32px}
.contract-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-block:25px 10px;min-height:94px}
.contract-home-brand{display:flex;flex-direction:column;align-items:flex-start;min-width:150px;gap:4px;max-width:310px}
.contract-home-brand .custom-logo{width:auto;max-width:min(260px,100%);max-height:64px;object-fit:contain}
.contract-home-brand .site-title{font-size:21px;color:#fff;line-height:1.35;text-shadow:0 2px 10px rgba(0,0,0,.22)}
.contract-header-phone{display:inline-flex;flex-direction:row;align-items:center;gap:6px;font-size:13px;letter-spacing:2px;line-height:1.5;color:#fff;font-weight:700}
.contract-header-phone svg{width:13px;height:13px}
body.home .contract-home-nav{margin-inline-start:auto;align-self:flex-start;padding-top:3px}
body.home .contract-home-nav .primary-menu{display:flex;flex-flow:row wrap;justify-content:flex-start;align-items:center;list-style:none;padding:0;margin:0;gap:16px;background:transparent}
body.home .contract-home-nav .primary-menu>li{display:list-item;margin:0}
body.home .contract-home-nav .primary-menu>li>a{background:transparent!important;box-shadow:none!important;border:0;border-radius:0;color:#fff;padding:8px 8px;font-size:17px;font-weight:800;text-shadow:0 2px 14px rgba(0,0,0,.25)}
body.home .contract-home-nav .primary-menu>li>a:hover,body.home .contract-home-nav .primary-menu>li.current-menu-item>a{color:var(--contract-yellow)!important}
body.home .contract-mobile-toggle{display:none}
/* Full-width covered hero with dark photographic overlay and gold highlighted word. */
.contract-cover{position:relative;isolation:isolate;min-height:495px;display:flex;align-items:center;justify-content:center;text-align:center;background:linear-gradient(115deg,#435469 0%,#26384a 58%,#14283d 100%);overflow:hidden;color:#fff}
.contract-cover-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;object-position:center 45%}
.contract-cover-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(15,30,49,.75),rgba(9,19,34,.76) 48%,rgba(11,24,40,.72))}
.contract-cover-content{padding-top:125px;padding-bottom:52px}
.contract-cover-copy{max-width:1280px;margin-inline:auto}
.contract-cover-eyebrow{display:block;color:#e8edf4;font-size:12px;font-weight:700;letter-spacing:.6px;margin-bottom:8px;opacity:.9}
.contract-cover-eyebrow span{color:var(--contract-yellow);margin-inline:5px}
.contract-cover h1{font-size:clamp(38px,5.1vw,76px);line-height:1.3;letter-spacing:0;margin:0 auto 20px;font-weight:900;color:#fff;text-wrap:balance}
.contract-cover h1 mark{background:none;color:var(--contract-yellow);padding:0}
.contract-cover p{font-size:clamp(17px,2vw,31px);line-height:1.7;max-width:1190px;margin:0 auto 22px;font-weight:500;color:#fff;text-wrap:pretty}
.contract-cover-rule{width:min(100%,1190px);height:3px;background:rgba(255,255,255,.93);margin:0 auto}
/* Intro side-by-side: image right, text left in RTL. */
.contract-intro{background:#fff;padding:48px 0 58px}
.contract-intro-inner{display:grid;grid-template-columns:1.06fr .94fr;align-items:center;gap:48px}
.contract-intro-image{position:relative;width:100%;overflow:hidden;background:#ebedef;min-height:370px;border-right:11px solid var(--contract-yellow)}
.contract-intro-image>img{display:block;object-fit:cover;object-position:center;width:100%;height:440px}
.contract-photo-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:230px;background:linear-gradient(135deg,#e5e9ed,#bec9d0);color:var(--contract-navy);font-weight:800;text-align:center}
.contract-intro-image .contract-photo-placeholder{min-height:420px;font-size:23px}
.contract-intro-copy{padding:14px 2px;text-align:right}
.contract-overline{display:block;font-size:15px;font-weight:800;color:#c49b20;margin-bottom:5px}
.contract-intro-copy h2{color:var(--contract-navy);font-size:clamp(28px,3.15vw,49px);line-height:1.4;font-weight:900;margin:0 0 14px;text-wrap:balance}
.contract-intro-copy p{color:#1b2b3d;font-size:clamp(17px,1.6vw,26px);line-height:1.9;margin:0;max-width:650px}
.contract-text-link{color:var(--contract-navy);display:inline-flex;gap:9px;align-items:center;font-size:15px;font-weight:800;margin-top:20px;border-bottom:2px solid var(--contract-yellow)}
/* Gallery looks like the three large side-by-side photos in the supplied screenshot. */
.contract-work-section{padding:56px 0 70px;background:var(--contract-light)}
.contract-center-heading{text-align:center;max-width:900px;margin:0 auto 50px}
.contract-center-heading h2{color:var(--contract-navy);font-size:clamp(29px,3.6vw,54px);line-height:1.4;font-weight:900;margin:0 0 13px;text-wrap:balance}
.contract-center-heading p{color:#334e68;font-size:clamp(17px,1.7vw,26px);line-height:1.7;margin:0 auto;max-width:880px}
.contract-work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.contract-work-tile{display:block;overflow:hidden;min-width:0;background:#d9e1e8;aspect-ratio:1.07/1;box-shadow:none;transition:transform .25s ease}
.contract-work-tile img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.contract-work-tile:hover img{transform:scale(1.035)}
.contract-work-link{text-align:center;margin-top:23px}
.contract-work-link a{color:var(--contract-navy);font-weight:800;font-size:16px;text-decoration:underline;text-decoration-color:var(--contract-yellow);text-underline-offset:6px}
/* Three prominent articles with navy category badge overlapping top right of photos. */
.contract-articles-section{padding:60px 0 75px;background:#fff}
.contract-articles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;row-gap:55px}
.contract-article-card{min-width:0;color:var(--contract-navy);text-align:center}
.contract-article-photo{position:relative;margin-top:20px}
.contract-article-photo>a:first-child{display:block;width:100%;aspect-ratio:1.33/1;overflow:hidden;background:#e8eaec}
.contract-article-photo img,.contract-article-photo .contract-photo-placeholder{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.contract-article-card:hover .contract-article-photo img{transform:scale(1.035)}
.contract-article-badge{position:absolute;top:-20px;right:3px;z-index:1;padding:8px 22px;min-height:55px;background:#172f48;color:#fff!important;font-size:18px;font-weight:800;display:flex;align-items:center;border:3px solid #fff}
.contract-article-card h3{font-size:clamp(20px,1.7vw,27px);line-height:1.55;font-weight:900;margin:12px 0 17px;color:var(--contract-navy);text-wrap:pretty}
.contract-article-card h3 a:hover{color:#c39a18}
.contract-article-card>p{margin:0 auto;color:#344f67;font-size:16px;line-height:1.7;max-width:450px}
/* Compact secondary service links, below prominent article cards. */
.contract-category-section{padding:52px 0 58px;background:#f7f8fa}
.contract-category-section .contract-center-heading{margin-bottom:27px}
.contract-category-section .contract-center-heading h2{font-size:33px}
.contract-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.contract-category-item{display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px solid #dce1e6;background:#fff;padding:13px 20px;color:var(--contract-navy);font-weight:800;font-size:17px;transition:border-color .2s,background .2s}
.contract-category-item:hover{border-color:var(--contract-yellow);background:#fffcf0}
.contract-category-item span:last-child{color:#b48a07;font-size:22px}
.contract-cta-section{background:var(--contract-navy);color:#fff;padding:37px 0}
.contract-cta-layout{display:flex;justify-content:space-between;align-items:center;gap:30px}
.contract-cta-layout h2{color:#fff;margin:0;font-size:27px;line-height:1.4}
.contract-cta-layout p{color:#d8e0e8;margin:5px 0 0;font-size:17px}
.contract-cta-buttons{display:flex;gap:10px;flex-wrap:wrap}
.contract-cta-buttons a{background:var(--contract-yellow);color:var(--contract-navy);border:1px solid var(--contract-yellow);padding:10px 19px;font-size:16px;font-weight:900;white-space:nowrap}
.contract-cta-buttons a+a{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
/* Left-edge contact rail on homepage, matching reference placement. */
body.home .contract-social-rail{position:fixed;left:0;top:43%;z-index:90;display:flex;flex-direction:column;gap:3px}
body.home .contract-social-rail a{display:grid;place-items:center;width:56px;height:56px;background:#2a54ac;color:#fff}
body.home .contract-social-rail a.rail-wa{background:#48ac2d}
body.home .contract-social-rail a.rail-instagram{background:#e53269}
body.home .contract-social-rail svg{height:24px;width:24px}
body.home .float-action{display:none}
@media(max-width:1050px){
  .contract-header-row{gap:14px}
  body.home .contract-home-nav .primary-menu{gap:6px}
  body.home .contract-home-nav .primary-menu>li>a{font-size:15px;padding:8px 5px}
  .contract-intro-inner{gap:27px}
  .contract-work-grid,.contract-articles-grid{gap:20px}
}
@media(max-width:760px){
  body.home .contract-home .container,body.home .contract-home-header .container{width:calc(100% - 32px)}
  body.home.admin-bar .contract-home-header{top:46px}
  .contract-header-row{position:relative;align-items:flex-start;min-height:80px;padding-top:13px;gap:10px}
  .contract-home-brand{min-width:0;max-width:230px}
  .contract-home-brand .custom-logo{max-height:44px;max-width:170px}
  .contract-home-brand .site-title{font-size:17px}
  .contract-header-phone{font-size:12px;letter-spacing:1px}
  body.home .contract-mobile-toggle{display:inline-flex!important;margin-inline-start:auto;background:rgba(9,24,39,.82);border:1px solid rgba(255,255,255,.55);color:#fff;font-size:14px;padding:8px 12px;white-space:nowrap}
  body.home .contract-home-nav{position:absolute;z-index:80;top:66px;left:0;right:0;margin:0;padding:0;max-width:100%;background:rgba(8,28,49,.96);box-shadow:0 12px 20px rgba(0,0,0,.2)}
  body.home .contract-home-nav .primary-menu{display:none!important;margin:0!important;padding:8px!important;flex-direction:column!important;gap:1px!important;align-items:stretch!important}
  body.home .contract-home-nav .primary-menu.is-open{display:flex!important}
  body.home .contract-home-nav .primary-menu>li{width:100%}
  body.home .contract-home-nav .primary-menu>li>a{display:block!important;color:#fff!important;text-align:right!important;padding:11px 12px!important;font-size:16px!important;background:transparent!important;border:0!important}
  .contract-cover{min-height:425px}
  .contract-cover-content{padding-top:130px;padding-bottom:48px}
  .contract-cover-eyebrow{font-size:11px}
  .contract-cover h1{font-size:clamp(32px,8vw,45px);margin-bottom:14px}
  .contract-cover p{font-size:clamp(16px,3.5vw,20px);line-height:1.75}
  .contract-cover-rule{height:2px}
  .contract-intro{padding:28px 0 36px}
  .contract-intro-inner{grid-template-columns:1fr;gap:22px}
  .contract-intro-image{min-height:240px;border-right-width:7px}
  .contract-intro-image>img,.contract-intro-image .contract-photo-placeholder{height:275px;min-height:275px}
  .contract-intro-copy{padding:0}
  .contract-intro-copy h2{font-size:clamp(28px,6vw,36px)}
  .contract-intro-copy p{font-size:17px;line-height:1.85}
  .contract-work-section,.contract-articles-section{padding:35px 0 44px}
  .contract-center-heading{margin-bottom:26px}
  .contract-center-heading h2{font-size:clamp(27px,6vw,36px)}
  .contract-center-heading p{font-size:16px;line-height:1.8}
  .contract-work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .contract-work-grid>.contract-work-tile:first-child{grid-column:span 2;aspect-ratio:16/9}
  .contract-work-tile{aspect-ratio:1/1}
  .contract-articles-grid{grid-template-columns:1fr;gap:32px}
  .contract-article-photo>a:first-child{aspect-ratio:1.55/1}
  .contract-article-badge{font-size:15px;min-height:42px;padding:6px 13px;top:-16px}
  .contract-article-card h3{font-size:22px;margin-bottom:8px}
  .contract-article-card>p{font-size:15px}
  .contract-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .contract-category-item{font-size:14px;padding:11px 10px}
  .contract-cta-layout{flex-direction:column;text-align:center;gap:18px}
  .contract-cta-buttons{justify-content:center}
  body.home .contract-social-rail{top:auto;bottom:85px;left:0}
  body.home .contract-social-rail a{width:40px;height:42px}
  body.home .contract-social-rail svg{width:20px;height:20px}
}
@media(max-width:390px){.contract-category-grid{grid-template-columns:1fr}.contract-cover h1{font-size:31px}.contract-cover-content{padding-top:126px}}

body.home .contract-social-rail a.rail-instagram svg{fill:none}

/* v0.3.1 — correction for construction, warehouses, hangars and gardens.
 * Only affects the public homepage; post & category layouts retain Nesma style.
 * The cover intentionally has NO post-thumbnail fallback, since posts often contain typography.
 */
body.home .contract-home-header .container{width:min(1380px,calc(100% - 60px))}
body.home .contract-header-row{align-items:center;padding-block:17px 10px;min-height:84px}
body.home .contract-home-brand{max-width:180px;min-width:100px;align-items:flex-start}
body.home .contract-home-brand .custom-logo{max-width:165px;max-height:58px;width:auto;height:auto;object-fit:contain}
body.home .contract-home-brand .site-title{font-size:17px;line-height:1.5}
body.home .contract-header-phone{font-size:12px;letter-spacing:1px}
body.home .contract-cover{min-height:455px}
body.home .contract-cover-shade{background:linear-gradient(100deg,rgba(12,26,40,.76),rgba(12,26,40,.64) 55%,rgba(12,26,40,.72))}
body.home .contract-cover-content{padding-top:140px;padding-bottom:56px}
body.home .contract-cover-copy{max-width:1080px}
body.home .contract-cover h1{font-size:clamp(32px,3.7vw,57px);line-height:1.42;max-width:1040px;margin-bottom:15px;overflow-wrap:break-word}
body.home .contract-cover p{font-size:clamp(16px,1.5vw,21px);line-height:1.9;max-width:880px;margin-bottom:18px}
body.home .contract-cover-rule{width:min(100%,875px);height:2px;opacity:.85}
body.home .contract-cover-eyebrow{font-size:13px;margin-bottom:14px}
body.home .contract-intro-copy h2{font-size:clamp(28px,2.65vw,42px)}
body.home .contract-intro-copy p{font-size:clamp(17px,1.4vw,21px);line-height:1.85}
@media(max-width:900px){
 body.home .contract-home-header .container{width:min(100% - 36px,1380px)}
 body.home .contract-cover h1{font-size:clamp(29px,4.5vw,43px)}
 body.home .contract-cover p{font-size:17px}
}
@media(max-width:680px){
 body.home .contract-home-header .container{width:calc(100% - 26px)}
 body.home .contract-header-row{padding-block:12px;min-height:75px;align-items:center}
 body.home .contract-home-brand{min-width:0;max-width:150px}
 body.home .contract-home-brand .custom-logo{max-width:125px;max-height:53px}
 body.home .contract-cover{min-height:380px}
 body.home .contract-cover-content{padding-top:148px;padding-bottom:45px}
 body.home .contract-cover h1{font-size:clamp(27px,7.2vw,37px);line-height:1.48;margin-bottom:12px}
 body.home .contract-cover p{font-size:15.5px;line-height:1.85;max-width:520px}
 body.home .contract-cover-eyebrow{font-size:10px;letter-spacing:0}
}

/* 0.4.0 — actual project galleries and video watch pages */
.nc-collection-page,.nc-single-media{padding-top:55px;padding-bottom:72px}
.nc-collection-page .contract-page-title,.nc-single-media .contract-page-title{margin-bottom:9px}
.nc-collection-page .contract-page-lede,.nc-single-media .contract-page-lede{color:#475569;max-width:850px}
.nc-media-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin:30px 0}
.nc-media-card{min-width:0;border:1px solid #e6eaf0;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 7px 22px rgba(16,41,67,.06)}
.nc-media-card-image{display:block;aspect-ratio:16/10;position:relative;overflow:hidden;background:#e7ecef}
.nc-media-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .25s}
.nc-media-card-image:hover img{transform:scale(1.035)}
.nc-media-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#edf0f2,#cbd5dc)}
.nc-play-label{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:60px;height:60px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.96);color:var(--nesma-accent);font-size:23px;box-shadow:0 4px 18px #0003}
.nc-media-card-text{padding:18px 20px 22px}
.nc-media-card-text h3{font-size:20px;line-height:1.5;margin:0 0 7px;color:var(--nesma-accent)}
.nc-media-card-text p{margin:0;color:#526173;font-size:15px}
.nc-media-card-text a:hover,.nc-photo-group h2 a:hover{color:#b58916}
.nc-single-media article{max-width:1080px;margin-inline:auto}
.nc-single-media .entry-content{margin:25px 0 35px}
.nc-breadcrumbs{margin-bottom:25px;font-size:14px;color:#64748b}
.nc-breadcrumbs a{color:var(--nesma-accent)}
.nc-media-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:22px 0 35px}
.nc-media-photo{margin:0;border:1px solid #e2e8ef;border-radius:12px;overflow:hidden;background:#fff}
.nc-media-photo img{width:100%;aspect-ratio:4/3;height:auto;object-fit:cover}
.nc-media-photo figcaption{padding:10px 14px;color:#526173;font-size:13px}
.nc-section-title{color:var(--nesma-accent);font-size:25px;margin:30px 0 6px}
.nc-video-frame{position:relative;width:100%;aspect-ratio:16/9;max-width:1080px;margin:30px auto;background:#0d1d2f;border-radius:13px;overflow:hidden}
.nc-video-frame iframe,.nc-video-frame video{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.nc-work-terms{display:flex;flex-wrap:wrap;gap:9px;margin:14px 0}
.nc-work-terms a{background:#f3f6f7;padding:5px 13px;border-radius:40px;font-size:13px;color:#1f4562}
.nc-photo-index{margin:28px 0}
.nc-photo-group{border-bottom:1px solid #e1e7ee;padding:0 0 26px;margin-bottom:28px}
.nc-photo-group h2{color:var(--nesma-accent);font-size:24px;margin:0 0 14px}
.nc-photo-group-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.nc-photo-group-grid a{display:block;border-radius:10px;overflow:hidden;background:#e5eaf0}
.nc-photo-group-grid img{width:100%;height:180px;object-fit:cover}
.nc-media-text-link,.nc-media-secondary-link a{display:inline-block;color:var(--nesma-accent);font-weight:700;margin-top:16px}
.nc-media-secondary-link{margin:22px 0;text-align:center}
.nc-services-section{padding:62px 0;background:#f6f8f9}
.nc-services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.nc-service-card{border-radius:12px;background:#fff;border:1px solid #e1e7ed;border-top:4px solid var(--nesma-secondary);padding:25px 24px;min-width:0}
.nc-service-photo{margin:-25px -24px 18px;aspect-ratio:16/9;overflow:hidden;border-radius:8px 8px 0 0;background:#e8edf1}
.nc-service-photo img{width:100%;height:100%;object-fit:cover}
.nc-service-card h3{margin:0 0 9px;font-size:21px;color:var(--nesma-accent);line-height:1.5}
.nc-service-card p{margin:0;color:#526173;font-size:16px}
.nc-home-videos{padding:58px 0 70px}
@media(max-width:900px){.nc-media-cards,.nc-media-gallery,.nc-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nc-photo-group-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.nc-collection-page,.nc-single-media{padding-top:30px;padding-bottom:44px}.nc-media-cards,.nc-media-gallery,.nc-services-grid{grid-template-columns:1fr;gap:15px}.nc-media-card-text h3{font-size:19px}.nc-photo-group-grid img{height:140px}.nc-services-section,.nc-home-videos{padding:38px 0}.nc-service-card{padding:20px}.nc-service-photo{margin:-20px -20px 16px}}
