/* Jeddah Contracting — refined responsive interactive components */
/* Article guide for pages whose imported post_content is blank */
.jc-article-toc{background:#faf8f6;border:1px solid #eee3d9;border-right:4px solid #f97316;padding:24px;display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;margin:28px 0;border-radius:9px}
.jc-article-toc>strong{grid-column:1/-1;color:#151515;font-size:16px;margin-bottom:2px}
.jc-article-toc a{font-size:13px;font-weight:700;color:#d9671c;text-decoration:none}
.jc-article-intro{border-bottom:1px solid #eee;padding-bottom:17px}
.jc-article-intro p{font-size:16px;line-height:2.2}
.jc-article-mid-cta{background:#161616;color:white;padding:30px 28px;border-radius:12px;margin:35px 0}
.jc-article-mid-cta h2{color:#fff!important;margin:0 0 14px!important}
.jc-article-mid-cta p{color:#dadada!important}
.jc-article-mid-cta>div{display:flex;gap:12px;flex-wrap:wrap}
.jc-article-content details{border:1px solid #e6e6e6;border-radius:7px;padding:15px;margin:11px 0;background:#fafafa}
.jc-article-content details summary{cursor:pointer;font-weight:800;font-size:14px}
.jc-article-content details p{font-size:13px;margin:12px 0 0}
.jc-article-more{background:#fafafa;padding:18px 22px;border-right:3px solid #f97316;margin:25px 0}
.jc-article-more h2{font-size:19px!important;margin:0 0 8px!important}
.jc-post-cover img{object-fit:cover}
.jc-footer-brand-link{display:flex;align-items:center;gap:14px;color:#fff!important;margin-bottom:18px}
.jc-footer-brand-link img{width:60px;height:60px;border-radius:13px}
.jc-footer-brand-link strong{font-size:25px;font-family:'Cairo','Tajawal',sans-serif}
.jc-footer-areas{display:flex;flex-wrap:wrap;gap:8px;margin-top:17px}
.jc-footer-areas span{font-size:10px;color:#ddd;background:#ffffff17;padding:6px 12px;border:1px solid #ffffff20;border-radius:999px}
.jc-footer-cta-strip{background:linear-gradient(115deg,#f97316,#e55e0b);padding:26px 0;color:#fff}
.jc-footer-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}
.jc-footer-cta-inner strong{font-size:22px;color:#fff;font-family:'Cairo','Tajawal',sans-serif}
.jc-footer-cta-inner p{font-size:12px;color:#fff;margin:3px 0 0}
.jc-footer-cta-inner .jc-btn{background:#171717;color:#fff!important}
@media(max-width:700px){.jc-article-toc{grid-template-columns:1fr;padding:17px}.jc-footer-cta-inner{flex-direction:column;align-items:stretch}.jc-footer-cta-inner strong{font-size:19px}.jc-footer-brand-link strong{font-size:20px}}

.jc-brand-mark{background:transparent!important;border:0!important;overflow:hidden;width:53px;height:53px;border-radius:12px}
.jc-brand-logo-icon{width:100%;height:100%;object-fit:contain;display:block;border-radius:12px}
.jc-brand-text strong{letter-spacing:-.45px}
.jc-site .jc-hero{isolation:isolate}
.jc-site .jc-hero:after{content:"";position:absolute;inset:auto 0 0;height:4px;background:linear-gradient(90deg,transparent,#f97316 27%,#ffb780 70%,transparent);z-index:3}
.jc-btn{transition:transform .24s ease,box-shadow .24s ease,background .24s ease!important}
.jc-btn-primary:hover{box-shadow:0 12px 24px #f9731655;transform:translateY(-3px)}
.jc-site .jc-luxe-heading h2,.jc-site .jc-expertise-copy h2,.jc-site .jc-hangar-detail h2{font-family:'Cairo','Tajawal',sans-serif;font-weight:800;font-size:clamp(26px,3.1vw,42px);margin:0 0 13px;line-height:1.48;color:#131313}
.jc-site .jc-luxe-heading em,.jc-site .jc-expertise-copy em{color:#f97316;font-style:normal}
.jc-luxe-label{display:block;color:#e76516;font-size:12px;font-weight:800;letter-spacing:.2px;margin-bottom:11px}
.jc-luxe-label:before{content:"";display:inline-block;width:24px;height:2px;vertical-align:middle;background:#f97316;margin-left:11px}
.jc-luxe-ribbon{background:#181818;border-block:1px solid #333;color:#f1f1f1}
.jc-luxe-ribbon>.jc-shell{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.jc-luxe-ribbon span{display:flex;align-items:center;justify-content:center;gap:13px;padding:20px 10px;font-size:12px;font-weight:700;white-space:nowrap;border-left:1px solid #353535}
.jc-luxe-ribbon svg{width:23px;height:23px;fill:none;stroke:#f97316;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.jc-luxe-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:31px}
.jc-luxe-heading p{color:#687075;font-size:14px;max-width:700px;margin:0}
.jc-luxe-heading-center{max-width:680px;margin:0 auto 45px;text-align:center;display:block}
.jc-luxe-heading-center .jc-luxe-label:before{display:none}
.jc-luxe-projects{background:linear-gradient(170deg,#f4f4f4,#fff 62%)}
.jc-slider-controls{display:flex;align-items:center;gap:9px;direction:ltr}
.jc-slider-controls button{width:47px;height:47px;border-radius:50%;border:1px solid #d3d3d3;background:#fff;color:#181818;display:grid;place-items:center;cursor:pointer;transition:.22s}
.jc-slider-controls button:hover,.jc-slider-controls button:focus-visible{background:#f97316;color:white;border-color:#f97316}
.jc-slider-controls svg,.jc-zoom-image svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.jc-showcase{position:relative;overflow:hidden;min-height:470px;background:#151515;box-shadow:0 28px 70px #15151523;border-radius:14px}
.jc-showcase-slide{position:absolute;inset:0;display:grid;grid-template-columns:1.5fr .68fr;opacity:0;pointer-events:none;transform:translateX(-12px);transition:opacity .55s ease,transform .55s ease;visibility:hidden}
.jc-showcase-slide.is-active{opacity:1;pointer-events:auto;transform:none;visibility:visible;z-index:2}
.jc-showcase-visual{height:470px;position:relative;overflow:hidden}
.jc-showcase-visual:after{content:"";position:absolute;inset:0;border-right:4px solid #f97316;pointer-events:none}
.jc-showcase-visual img{height:100%;width:100%;object-fit:cover;display:block;transform:scale(1.06);transition:transform 6.5s ease;filter:saturate(.94)}
.jc-showcase-slide.is-active img{transform:scale(1)}
.jc-showcase-details{padding:56px 35px;display:flex;flex-direction:column;align-items:start;justify-content:center;background:radial-gradient(circle at bottom right,#303030,#151515 65%);color:#fff}
.jc-showcase-details h3{font-family:'Cairo','Tajawal',sans-serif;font-size:clamp(22px,2vw,30px);margin:10px 0 10px;color:white}
.jc-showcase-details p{color:#c2c2c2;font-size:13px;line-height:2.1}
.jc-showcase-num{font-family:Arial,sans-serif;color:#f97316;font-size:14px;letter-spacing:3px;display:block}
.jc-showcase-line{width:48px;height:3px;background:#f97316;margin-top:24px}
.jc-showcase-details .jc-btn-dark{margin-top:20px;background:#f97316;color:#fff!important;border-radius:999px}
.jc-zoom-image{position:absolute;right:19px;bottom:19px;width:47px;height:47px;border:0;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.96);color:#141414;z-index:1;cursor:zoom-in;transition:transform .2s}
.jc-zoom-image:hover{transform:scale(1.09);background:#f97316;color:#fff}
.jc-slider-dots{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:25px}
.jc-slider-dots button{width:12px;height:12px;border:0;border-radius:999px;background:#c5c5c5;cursor:pointer;transition:width .25s ease,background .25s ease}
.jc-slider-dots button[aria-pressed=true]{width:34px;background:#f97316}
.jc-luxe-method{background:#fff}
.jc-method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;position:relative}
.jc-method-grid:before{content:"";position:absolute;top:62px;right:10%;width:80%;height:2px;background:linear-gradient(90deg,#ddd,#f97316,#ddd)}
.jc-method-step{position:relative;z-index:1;padding:25px 21px 27px;background:#f8f8f8;border:1px solid #ececec;border-radius:12px;transition:transform .25s ease,box-shadow .25s ease}
.jc-method-step:hover{transform:translateY(-6px);box-shadow:0 16px 30px #17171713}
.jc-method-symbol{width:72px;height:72px;border-radius:12px;background:#191919;display:grid;place-items:center;margin-bottom:17px;color:#fff}
.jc-method-symbol svg{width:36px;height:36px;fill:none;stroke:#f97316;stroke-width:2.7;stroke-linecap:round;stroke-linejoin:round}
.jc-method-number{font-size:12px;font-weight:800;color:#f97316;letter-spacing:2px}
.jc-method-step h3{font-size:17px;margin:9px 0 9px;color:#1a1a1a}
.jc-method-step p{font-size:12px;line-height:2;color:#5c6165;margin:0}
.jc-luxe-expertise{background:linear-gradient(140deg,#151515,#252525);color:#fff;overflow:hidden;position:relative}
.jc-luxe-expertise:before{content:"";position:absolute;left:-100px;top:-140px;width:520px;height:520px;border:1px solid #ffffff14;border-radius:50%;box-shadow:0 0 0 75px #ffffff06,0 0 0 150px #ffffff05}
.jc-expertise-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:65px;position:relative;z-index:1}
.jc-expertise-graphic{min-height:450px;position:relative;display:flex;align-items:center;justify-content:center;isolation:isolate}
.jc-expertise-graphic>img{width:100%;max-height:490px;object-fit:contain;position:relative;z-index:2;filter:drop-shadow(0 30px 20px #0007)}
.jc-architecture-glow{position:absolute;inset:20% 8%;border-radius:50%;background:radial-gradient(circle,#f9731655,transparent 66%);z-index:-1}
.jc-luxe-expertise .jc-expertise-copy h2{color:#fff}
.jc-luxe-expertise .jc-expertise-copy p{color:#c8c8c8;line-height:2.2}
.jc-expertise-points{display:grid;gap:4px;margin:26px 0}
.jc-expertise-points>div{display:flex;gap:17px;align-items:center;border-bottom:1px solid #ffffff24;padding:12px 0;color:#f5f5f5;font-size:13px}
.jc-expertise-points span{font:700 13px Arial;color:#f97316}
.jc-expertise-actions{display:flex;gap:11px;align-items:center;flex-wrap:wrap;margin-top:25px}
.jc-btn-ghost-dark{border:1px solid #ffffff55;background:transparent;color:#fff!important}
.jc-btn-ghost-dark:hover{background:#ffffff1b}
.jc-lightbox{position:fixed;inset:0;background:rgba(9,9,9,.96);z-index:10000;display:flex;align-items:center;justify-content:center;color:#fff;padding:55px 66px}
.jc-lightbox[hidden]{display:none}
.jc-lightbox figure{margin:0;max-width:min(1160px,100%);max-height:100%;text-align:center}
.jc-lightbox figure img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 150px);object-fit:contain;border-radius:4px;margin:auto}
.jc-lightbox figcaption{font-size:12px;margin-top:12px;color:#dbdbdb}
.jc-lightbox button{cursor:pointer}
.jc-lightbox-close{position:absolute;top:14px;left:22px;background:transparent;border:none;color:#fff;font-size:41px;line-height:1}
.jc-lightbox-previous,.jc-lightbox-following{position:absolute;top:50%;transform:translateY(-50%);background:#f97316;color:#fff;border:0;border-radius:50%;width:45px;height:45px;font-size:22px}
.jc-lightbox-previous{right:16px}.jc-lightbox-following{left:16px}
.jc-js-ready [data-reveal]{opacity:0;transform:translateY(21px);transition:opacity .7s ease,transform .7s ease}
.jc-js-ready [data-reveal].jc-visible{opacity:1;transform:none}
.jc-gallery-item:hover img{transform:scale(1.05);filter:saturate(1.12)}
.jc-gallery-item{cursor:zoom-in}
.jc-site .jc-single-article,.jc-site .jc-page-article{font-size:15px}
.jc-article-image-cta{display:flex;gap:9px;justify-content:center;align-items:center;flex-wrap:wrap;margin:8px 0 24px}
.jc-article-image-cta a{display:inline-flex;align-items:center;justify-content:center;padding:8px 13px;background:#1d1d1d;color:#fff!important;border-radius:999px;font-size:11px;font-weight:700;text-decoration:none!important}
.jc-article-image-cta a:first-child{background:#1b8553}
.jc-share-belt{margin-top:28px;padding:17px 0;border-top:1px solid #e9e9e9;display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.jc-share-belt a{color:#d65b11;font-size:12px;font-weight:800}
@media(max-width:1040px){.jc-method-grid{grid-template-columns:repeat(2,1fr)}.jc-expertise-grid{gap:35px}.jc-showcase{min-height:420px}.jc-showcase-visual{height:420px}.jc-showcase-details{padding:32px 25px}}
@media(max-width:700px){.jc-brand-logo-icon{width:43px;height:43px}.jc-brand-mark{width:43px;height:43px}.jc-luxe-ribbon>.jc-shell{grid-template-columns:repeat(2,1fr)}.jc-luxe-ribbon span{padding:12px 6px;font-size:10px;gap:7px;justify-content:flex-start}.jc-luxe-ribbon svg{width:18px;height:18px}.jc-luxe-heading{align-items:start;gap:15px}.jc-luxe-heading h2{font-size:26px}.jc-luxe-heading p{font-size:12px}.jc-slider-controls button{width:37px;height:37px}.jc-showcase{min-height:525px;border-radius:9px}.jc-showcase-slide{grid-template-columns:1fr;grid-template-rows:285px 240px}.jc-showcase-visual{height:285px}.jc-showcase-visual:after{inset:auto 0 0;height:4px;border-right:0;background:#f97316}.jc-showcase-details{height:240px;padding:20px 23px;justify-content:start}.jc-showcase-line{margin-top:12px}.jc-showcase-details h3{font-size:20px;margin:8px 0}.jc-showcase-details p{margin:0;font-size:12px}.jc-showcase-details .jc-btn{margin-top:8px;min-height:40px}.jc-method-grid{grid-template-columns:1fr;gap:13px}.jc-method-grid:before{display:none}.jc-method-step{padding:18px}.jc-method-symbol{width:55px;height:55px;margin-bottom:10px}.jc-method-symbol svg{width:27px;height:27px}.jc-expertise-grid{grid-template-columns:1fr}.jc-expertise-graphic{min-height:230px;max-height:300px;order:2}.jc-expertise-graphic img{max-height:330px}.jc-expertise-copy{order:1}.jc-expertise-actions .jc-btn{flex:1 1 100%}.jc-lightbox{padding:50px 18px}.jc-lightbox figure img{max-height:calc(100dvh - 120px)}.jc-lightbox-previous,.jc-lightbox-following{top:auto;bottom:10px;transform:none}.jc-luxe-projects,.jc-luxe-method,.jc-luxe-expertise{padding-block:55px}}
@media(prefers-reduced-motion:reduce){.jc-showcase-slide,.jc-showcase-visual img,.jc-js-ready [data-reveal]{transition:none!important;transform:none!important}.jc-slider-dots button{transition:none}}
