/* ============================================================
   JDW Circa Strip Widget — auto-scrolling marquee
   ============================================================ */

.jdw-circa-strip{
  --jdw-circa-speed:40s;
  --jdw-circa-direction:normal;
  background:#1A1816;
  padding:80px 0;
  position:relative;
  overflow:hidden;
}

/* ---------- Heading ---------- */
.jdw-circa-head{
  max-width:840px;
  margin:0 auto 50px;
  padding:0 clamp(20px,4vw,40px);
}
.jdw-circa-head.jdw-align-center{ text-align:center; }
.jdw-circa-head.jdw-align-left  { text-align:left; }
.jdw-circa-head.jdw-align-right { text-align:right; }

.jdw-circa-eyebrow{
  font-family:'Montserrat',sans-serif;
  font-size:11px;
  font-weight:500;
  letter-spacing:.34em;
  text-transform:uppercase;
  color:#A8884C;
  margin:0 0 16px;
}

.jdw-circa-title{
  font-family:'Playfair Display',Georgia,serif;
  font-size:clamp(28px,4vw,44px);
  font-weight:500;
  color:#F7F4ED;
  margin:0 0 14px;
  letter-spacing:.02em;
  line-height:1.2;
}

.jdw-circa-subtitle{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-style:italic;
  font-size:18px;
  font-weight:400;
  color:rgba(247,244,237,.7);
  margin:0;
  line-height:1.6;
}

/* ---------- Marquee ---------- */
.jdw-circa-marquee{
  position:relative;
  overflow:hidden;
}
.jdw-circa-strip.jdw-edge-fade .jdw-circa-marquee{
  -webkit-mask-image:linear-gradient(to right,transparent 0,#000 5%,#000 95%,transparent 100%);
          mask-image:linear-gradient(to right,transparent 0,#000 5%,#000 95%,transparent 100%);
}

.jdw-circa-track{
  display:flex;
  width:max-content;
  animation:jdwCircaScroll var(--jdw-circa-speed) linear infinite;
  animation-direction:var(--jdw-circa-direction);
  will-change:transform;
}

@keyframes jdwCircaScroll{
  from{ transform:translateX(0); }
  to  { transform:translateX(-50%); }
}

.jdw-circa-strip.jdw-pause-on-hover .jdw-circa-track:hover,
.jdw-circa-strip.jdw-pause-on-hover .jdw-circa-track:focus-within{
  animation-play-state:paused;
}

/* ---------- Item ---------- */
.jdw-circa-item{
  flex:0 0 auto;
  width:320px;
  margin-right:40px;
  text-decoration:none;
  color:inherit;
  display:block;
}

.jdw-circa-img-wrap{
  width:100%;
  aspect-ratio:4 / 5;
  overflow:hidden;
  background:#2A2722;
  position:relative;
}

.jdw-circa-item img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .8s ease,filter .4s ease;
}

a.jdw-circa-item:hover img,
a.jdw-circa-item:focus img{
  transform:scale(1.04);
  filter:brightness(1.08);
}

.jdw-circa-cap{
  margin-top:18px;
  padding:0 4px;
  text-align:center;
}

.jdw-circa-cap .cap-main{
  font-family:'Playfair Display',Georgia,serif;
  font-style:italic;
  font-size:17px;
  font-weight:400;
  color:#E8E0D0;
  margin:0 0 6px;
  letter-spacing:.02em;
  line-height:1.3;
}

.jdw-circa-cap .cap-meta{
  font-family:'Montserrat',sans-serif;
  font-size:9px;
  font-weight:500;
  letter-spacing:.3em;
  text-transform:uppercase;
  color:#A8884C;
  margin:0;
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce){
  .jdw-circa-track{ animation:none; transform:none; }
}

/* ---------- Mobile ---------- */
@media (max-width:600px){
  .jdw-circa-strip{ padding:60px 0; }
  .jdw-circa-head{ margin-bottom:36px; }
  .jdw-circa-item{ width:240px; margin-right:24px; }
  .jdw-circa-cap .cap-main{ font-size:15px; }
}
