.noor-acf-loop{display:grid;grid-template-columns:repeat(var(--noor-cols,3),minmax(0,1fr));gap:30px}
.noor-acf-loop-card{overflow:hidden;background:#fff;border:1px solid #e5e5e5;border-radius:var(--noor-card-radius,8px)}.noor-acf-loop-card-link{display:block;color:inherit;text-decoration:none}.noor-acf-loop-card-link:hover{color:inherit;text-decoration:none}
.noor-acf-loop-image{aspect-ratio:16/10;overflow:hidden;background:#f5f5f5}.noor-acf-loop-image{position:relative}.noor-acf-loop-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s ease}.noor-acf-loop-image.noor-image-zoom-hover{overflow:hidden}.noor-acf-loop-card:hover .noor-acf-loop-image.noor-image-zoom-hover img{transform:scale(1.06)}.noor-acf-loop-image.noor-has-overlay::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.1),rgba(0,0,0,.5));z-index:1;pointer-events:none}
.noor-acf-loop-content{padding:var(--noor-card-padding,22px)}.noor-acf-loop-title{font-size:var(--noor-title-size,22px);line-height:1.3;margin:0 0 8px}.noor-acf-loop-location{opacity:.75;margin-bottom:10px}.noor-acf-loop-excerpt{line-height:1.7}.noor-acf-loop-excerpt p:last-child{margin-bottom:0}.noor-acf-loop-rating{margin:8px 0 12px}.noor-stars{display:inline-flex;gap:2px;line-height:1}.noor-star{position:relative;display:inline-block;width:20px;height:20px;font-size:20px;line-height:20px}.noor-star-empty,.noor-star-fill{position:absolute;inset:0;display:block;overflow:hidden;white-space:nowrap}.noor-star-empty{color:#ddd}.noor-star-fill{color:#f5b301;z-index:2;width:0}.noor-acf-loop-empty{padding:20px;border:1px dashed #ccc}
@media(max-width:980px){.noor-acf-loop{grid-template-columns:repeat(min(2,var(--noor-cols,3)),minmax(0,1fr))}}
@media(max-width:767px){.noor-acf-loop{grid-template-columns:1fr}}


.noor-acf-loop-placeholder{min-height:150px;display:flex;align-items:center;justify-content:center;background:#f3f4f6;color:#6b7280;font-size:14px;font-weight:600;}
.noor-acf-loop-vb-preview{pointer-events:none;}
.noor-acf-loop-vb-preview .noor-acf-loop-card{max-width:520px;margin:0 auto;}


/* Noor Process Timeline - clean, responsive, animated */
.noor-process-timeline-module{width:100%;max-width:1180px;margin:0 auto;box-sizing:border-box}
.noor-process-timeline-heading{text-align:center;margin:0 0 42px}
.noor-process-timeline-heading h2{margin:0;padding:0;font-size:26px;line-height:1.25;font-weight:700;letter-spacing:.01em}
.noor-process-timeline-track{display:flex;align-items:flex-start;width:100%;box-sizing:border-box}
.noor-process-timeline-item{flex:0 0 150px;text-align:center;position:relative;box-sizing:border-box;opacity:0;transform:translateY(14px)}
.noor-process-timeline-node{width:46px;height:46px;margin:0 auto 14px;border:1px solid #d8d8d8;border-radius:50%;background:#fff;color:#222;display:flex;align-items:center;justify-content:center;box-sizing:border-box;position:relative;z-index:2}
.noor-process-timeline-node span{font-size:14px;line-height:1;font-weight:700}
.noor-process-timeline-content{min-width:0}.noor-process-timeline-label{font-size:15px;line-height:1.4;font-weight:600;color:#222}.noor-process-timeline-description{margin-top:7px;font-size:13px;line-height:1.55;font-weight:400;color:#666}
.noor-process-timeline-connector{height:1px;flex:1;background:#dedede;margin-top:23px;min-width:25px;overflow:hidden;position:relative;opacity:0}
.noor-process-timeline-connector span{display:block;width:100%;height:100%;background:currentColor;transform:scaleX(0);transform-origin:left center}
.noor-process-timeline-module.is-visible .noor-process-timeline-item{animation:noorTimelineStepIn .55s cubic-bezier(.2,.7,.2,1) forwards}
.noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(1){animation-delay:.08s}
.noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(3){animation-delay:.20s}
.noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(5){animation-delay:.32s}
.noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(7){animation-delay:.44s}
.noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(9){animation-delay:.56s}
.noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(11){animation-delay:.68s}
.noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(13){animation-delay:.80s}
.noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(15){animation-delay:.92s}
.noor-process-timeline-module.is-visible .noor-process-timeline-connector{animation:noorTimelineConnectorIn .55s ease forwards}
.noor-process-timeline-module.is-visible .noor-process-timeline-connector:nth-child(2){animation-delay:.24s}
.noor-process-timeline-module.is-visible .noor-process-timeline-connector:nth-child(4){animation-delay:.36s}
.noor-process-timeline-module.is-visible .noor-process-timeline-connector:nth-child(6){animation-delay:.48s}
.noor-process-timeline-module.is-visible .noor-process-timeline-connector:nth-child(8){animation-delay:.60s}
.noor-process-timeline-module.is-visible .noor-process-timeline-connector:nth-child(10){animation-delay:.72s}
.noor-process-timeline-module.is-visible .noor-process-timeline-connector:nth-child(12){animation-delay:.84s}
.noor-process-timeline-module.is-visible .noor-process-timeline-connector:nth-child(14){animation-delay:.96s}
@keyframes noorTimelineStepIn{to{opacity:1;transform:translateY(0)}}
@keyframes noorTimelineConnectorIn{from{opacity:0}to{opacity:1}}
@media(max-width:980px){
  .noor-process-timeline-item{flex-basis:125px}
  .noor-process-timeline-label{font-size:14px}.noor-process-timeline-description{font-size:13px}
}
@media(max-width:767px){
  .noor-process-timeline-module{max-width:100%}
  .noor-process-timeline-heading{text-align:left;margin-bottom:30px}
  .noor-process-timeline-heading h2{font-size:24px}
  .noor-process-timeline-track{display:block;position:relative}
  .noor-process-timeline-track:before{content:"";position:absolute;left:22px;top:23px;bottom:23px;width:1px;background:#dedede}
  .noor-process-timeline-item{width:100%;min-height:68px;display:flex;align-items:center;text-align:left;position:relative;z-index:1;transform:translateX(-10px);}
  .noor-process-timeline-node{flex:0 0 46px;width:46px;height:46px;margin:0 18px 0 0;background:#fff}
  .noor-process-timeline-label{font-size:15px}
  .noor-process-timeline-connector{display:none}
  .noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(n){animation:noorTimelineMobileStepIn .5s cubic-bezier(.2,.7,.2,1) forwards}
  .noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(1){animation-delay:.08s}
  .noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(3){animation-delay:.20s}
  .noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(5){animation-delay:.32s}
  .noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(7){animation-delay:.44s}
  .noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(9){animation-delay:.56s}
  .noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(11){animation-delay:.68s}
  .noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(13){animation-delay:.80s}
  .noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(15){animation-delay:.92s}
}
@keyframes noorTimelineMobileStepIn{to{opacity:1;transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){
  .noor-process-timeline-item,.noor-process-timeline-connector{opacity:1;transform:none;animation:none!important}
}

/* Visual Builder preview */
.noor-process-timeline-vb-preview{opacity:1!important;transform:none!important}
.noor-process-timeline-vb-preview .noor-process-timeline-item{opacity:1;transform:none}
.noor-process-timeline-vb-preview .noor-process-timeline-connector{opacity:1}
.noor-process-timeline-heading h2{font-size:var(--noor-timeline-title-size,26px)}
.noor-process-timeline-label{font-size:var(--noor-timeline-step-size,15px)}
.noor-process-timeline-node{width:var(--noor-timeline-dot-size,46px);height:var(--noor-timeline-dot-size,46px)}
.noor-process-timeline-connector{margin-top:calc(var(--noor-timeline-dot-size,46px) / 2)}
.noor-process-timeline-track{align-items:flex-start}

/* Noor Process Timeline - Visual Builder preview */
.noor-process-timeline-vb-preview .noor-process-timeline-item,
.noor-process-timeline-vb-preview .noor-process-timeline-connector {
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
}
.noor-process-timeline-vb-preview .noor-process-timeline-connector::after {
  transform: none !important;
}

.noor-process-timeline-module{width:100%;max-width:1180px;margin:0 auto;box-sizing:border-box}
.noor-process-timeline-heading{text-align:center;margin:0 0 42px}
.noor-process-timeline-heading h2{margin:0;padding:0;font-size:var(--noor-timeline-title-size,26px);line-height:1.25;font-weight:700}
.noor-process-timeline-track{display:flex;align-items:flex-start;width:100%;box-sizing:border-box}
.noor-process-timeline-item{flex:1 1 0;min-width:0;text-align:center;position:relative;box-sizing:border-box;opacity:0;transform:translateY(14px)}
.noor-process-timeline-node{width:var(--noor-timeline-dot-size,46px);height:var(--noor-timeline-dot-size,46px);margin:0 auto 14px;border:1px solid #d8d8d8;border-radius:50%;background:#fff;color:#222;display:flex;align-items:center;justify-content:center;box-sizing:border-box;position:relative;z-index:2}
.noor-process-timeline-node span{font-size:14px;line-height:1;font-weight:700}
.noor-process-timeline-label{font-size:var(--noor-timeline-step-size,15px);line-height:1.4;font-weight:500;color:#222}
.noor-process-timeline-connector{height:1px;flex:1 1 80px;min-width:25px;background:#dedede;margin-top:calc(var(--noor-timeline-dot-size,46px) / 2);opacity:0;transform:scaleX(.1);transform-origin:left center}
.noor-process-timeline-module.is-visible .noor-process-timeline-item{animation:noorTimelineStepIn .5s cubic-bezier(.2,.7,.2,1) forwards}
.noor-process-timeline-module.is-visible .noor-process-timeline-connector{animation:noorTimelineConnectorIn .45s ease forwards}
.noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(1){animation-delay:.05s}
.noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(3){animation-delay:.17s}
.noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(5){animation-delay:.29s}
.noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(7){animation-delay:.41s}
.noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(9){animation-delay:.53s}
.noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(11){animation-delay:.65s}
.noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(13){animation-delay:.77s}
.noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(15){animation-delay:.89s}
.noor-process-timeline-module.is-visible .noor-process-timeline-connector:nth-child(2){animation-delay:.11s}
.noor-process-timeline-module.is-visible .noor-process-timeline-connector:nth-child(4){animation-delay:.23s}
.noor-process-timeline-module.is-visible .noor-process-timeline-connector:nth-child(6){animation-delay:.35s}
.noor-process-timeline-module.is-visible .noor-process-timeline-connector:nth-child(8){animation-delay:.47s}
.noor-process-timeline-module.is-visible .noor-process-timeline-connector:nth-child(10){animation-delay:.59s}
.noor-process-timeline-module.is-visible .noor-process-timeline-connector:nth-child(12){animation-delay:.71s}
.noor-process-timeline-module.is-visible .noor-process-timeline-connector:nth-child(14){animation-delay:.83s}
@keyframes noorTimelineStepIn{to{opacity:1;transform:translateY(0)}}
@keyframes noorTimelineConnectorIn{from{opacity:0;transform:scaleX(.1)}to{opacity:1;transform:scaleX(1)}}
@media(max-width:767px){
 .noor-process-timeline-heading{text-align:left;margin-bottom:30px}
 .noor-process-timeline-heading h2{font-size:24px}
 .noor-process-timeline-track{display:block;position:relative}
 .noor-process-timeline-track:before{content:"";position:absolute;left:22px;top:23px;bottom:23px;width:1px;background:#dedede}
 .noor-process-timeline-item{width:100%;min-height:68px;display:flex;align-items:center;text-align:left;opacity:0;transform:translateX(-10px)}
 .noor-process-timeline-node{flex:0 0 var(--noor-timeline-dot-size,46px);margin:0 18px 0 0;background:#fff}
 .noor-process-timeline-connector{display:none}
 .noor-process-timeline-module.is-visible .noor-process-timeline-item:nth-child(n){animation:noorTimelineMobileStepIn .45s cubic-bezier(.2,.7,.2,1) forwards}
}
@keyframes noorTimelineMobileStepIn{to{opacity:1;transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){
 .noor-process-timeline-item,.noor-process-timeline-connector{opacity:1;transform:none;animation:none!important}
}

/* v8.3 timeline improvements */
.noor-process-timeline-editor-placeholder{padding:18px 20px;border:1px solid #e2e2e2;border-radius:8px;background:#f8f8f8;color:#222;line-height:1.5;box-sizing:border-box;}
.noor-process-timeline-editor-placeholder strong{display:block;font-size:16px;margin-bottom:4px;}
.noor-process-timeline-editor-placeholder span{display:block;font-size:13px;color:#666;}
.noor-process-timeline-item{min-width:180px;}
.noor-process-timeline-content{width:100%;max-width:230px;margin:0 auto;}
.noor-process-timeline-description{margin-top:8px;font-size:13px;line-height:1.55;color:#666;}
@media(max-width:1100px) and (min-width:768px){
 .noor-process-timeline-item{min-width:155px;}
 .noor-process-timeline-content{max-width:190px;}
}
@media(max-width:767px){
 .noor-process-timeline-item{min-width:0;}
 .noor-process-timeline-content{max-width:none;margin:0;}
}
