/* ============================================================
   ASIF TRADERS — landing page carousels (03 Finishes / 04 Structure)
   Cards styled EXACTLY like the homepage featured cards: corner badge,
   round view arrow, product on the cream circle, unit dots, bold name,
   description, info line and the quote footer with the round + button.
   The centred card is emphasised and shows an "Add to Quote" pill.
   Scoped to .carousel .pcard so nothing else on the site changes.
   ============================================================ */
.carousel .pcard{position:relative;flex:0 0 268px;scroll-snap-align:center;display:flex;flex-direction:column;
  background:#FFFCF7;border:1px solid rgba(43,43,43,.08);border-radius:16px;padding:14px 14px 16px;overflow:visible;
  transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease,background .28s ease}
.carousel .pcard:hover{border-color:rgba(252,111,32,.4);box-shadow:0 20px 38px -28px rgba(43,43,43,.6)}
.carousel .pcard.is-active{background:#fff;transform:scale(1.045);z-index:3;
  box-shadow:0 30px 50px -34px rgba(43,43,43,.65);border-color:rgba(43,43,43,.12)}

.carousel .pcard .fcp-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.carousel .pcard .fcp-badge{display:inline-flex;align-items:center;font-family:var(--font-d);font-size:9px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;background:#FEE8D0;color:#8A3B0C;border-radius:999px;padding:4px 9px;
  max-width:70%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.carousel .pcard .fcp-view{width:30px;height:30px;border-radius:50%;background:#fff;border:1px solid rgba(43,43,43,.1);
  display:grid;place-items:center;color:#8A8A8A;flex:none;transition:.18s}
.carousel .pcard:hover .fcp-view{background:#FC6F20;border-color:#FC6F20;color:#fff;transform:translateX(2px)}

.carousel .pcard .media{aspect-ratio:auto;height:176px;margin:10px 0 4px;background:transparent;padding:0;
  display:flex;align-items:center;justify-content:center;overflow:hidden}
.carousel .pcard .media:before{content:"";position:absolute;height:80%;width:auto;aspect-ratio:1/1;border-radius:50%;
  background:radial-gradient(circle,#F6E3C8 0 60%,rgba(246,227,200,.6) 84%,rgba(246,227,200,0) 100%)}
.carousel .pcard .media img{position:relative;z-index:1;width:auto;height:auto;max-width:82%;max-height:88%;
  object-fit:contain;mix-blend-mode:normal;filter:drop-shadow(0 14px 16px rgba(120,70,20,.14));transition:transform .4s ease}
.carousel .pcard:hover .media img{transform:translateY(-4px) scale(1.03)}
.carousel .pcard.is-active .media img{max-width:88%;max-height:92%}

.carousel .pcard .fcp-units{display:flex;align-items:center;gap:6px;justify-content:center;margin-bottom:10px}
.carousel .pcard .fcp-units i{width:7px;height:7px;border-radius:50%;background:#D9C6A8;display:inline-block}
.carousel .pcard .fcp-units i.on{background:#FC6F20}
.carousel .pcard .fcp-units span{font-family:var(--font-d);font-size:9.5px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:#8A8A8A;margin-left:4px}

.carousel .pcard .body{padding:0;display:flex;flex-direction:column;gap:0;flex:1}
.carousel .pcard .brand{display:none}
.carousel .pcard h3{font-family:var(--font-b);font-weight:700;font-size:14.5px;line-height:1.32;color:#2B2B2B;margin:0;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;min-height:38px}
.carousel .pcard.is-active h3{font-family:"Playfair Display",Georgia,serif;font-size:17px;font-weight:700;min-height:44px}
.carousel .pcard .spec{font-size:11.5px;line-height:1.5;color:#8A8A8A;margin:5px 0 0;min-height:34px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

.carousel .pcard .fcp-info{display:flex;align-items:center;gap:6px;margin-top:10px;font-size:11px;font-weight:600;color:#6B7280}
.carousel .pcard .fcp-info svg{color:#3F6B3F;flex:none}

.carousel .pcard .fcp-foot{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:12px;
  border-top:1px dashed rgba(43,43,43,.16)}
.carousel .pcard .fcp-rate{font-family:var(--font-d);font-weight:700;font-size:14.5px;color:#2B2B2B;white-space:nowrap}
.carousel .pcard .fcp-add{margin-left:auto;width:36px;height:36px;border-radius:50%;background:#FC6F20;color:#fff;
  display:grid;place-items:center;flex:none;transition:.18s}
.carousel .pcard:hover .fcp-add{background:#E05F0E;transform:scale(1.06)}
.carousel .pcard .fcp-quick{display:none;margin-left:auto;align-items:center;gap:7px;height:34px;padding:0 12px;
  border-radius:999px;background:#FC6F20;color:#fff;font-family:var(--font-d);font-weight:700;font-size:11.5px;
  white-space:nowrap;flex:none}
.carousel .pcard.is-active .fcp-quick{display:inline-flex}
.carousel .pcard.is-active .fcp-add{display:none}
.carousel .pcard.is-active .fcp-rate{font-size:13.5px}

@media (max-width:1024px){
  .carousel .pcard{flex:0 0 236px}
  .carousel .pcard .media{height:154px}
  .carousel .pcard.is-active h3{font-size:15.5px}
}
@media (max-width:860px){
  .carousel .pcard{flex:0 0 30vw;border-radius:14px;padding:11px 11px 13px}
  .carousel .pcard .media{height:132px;margin:8px 0 3px}
  .carousel .pcard .fcp-badge{font-size:8.5px;padding:3px 8px}
  .carousel .pcard .fcp-view{width:26px;height:26px}
  .carousel .pcard h3{font-size:12.5px;line-height:1.3;min-height:33px}
  .carousel .pcard.is-active h3{font-size:14px;min-height:36px}
  .carousel .pcard .spec{font-size:10.5px;line-height:1.45;min-height:31px}
  .carousel .pcard .fcp-info{font-size:10px;margin-top:8px}
  .carousel .pcard .fcp-rate{font-size:12.5px}
  .carousel .pcard.is-active .fcp-rate{font-size:12px}
  .carousel .pcard .fcp-add{width:32px;height:32px}
  .carousel .pcard .fcp-quick{height:30px;padding:0 11px;font-size:10.5px}
}
@media (max-width:640px){
  .carousel .pcard{flex:0 0 45vw;padding:10px 10px 12px;border-radius:13px}
  .carousel .pcard.is-active{transform:scale(1.055)}
  .carousel .pcard .media{height:118px;margin:6px 0 2px}
  .carousel .pcard .fcp-top{gap:6px}
  .carousel .pcard .fcp-badge{font-size:8px;padding:3px 7px;letter-spacing:.1em}
  .carousel .pcard .fcp-view{width:24px;height:24px}
  .carousel .pcard .fcp-view svg{width:11px;height:11px}
  .carousel .pcard .fcp-units{margin-bottom:7px;gap:5px}
  .carousel .pcard .fcp-units i{width:5px;height:5px}
  .carousel .pcard .fcp-units span{font-size:8.5px}
  .carousel .pcard h3{font-size:12px;min-height:0}
  .carousel .pcard.is-active h3{font-size:13px;min-height:0}
  .carousel .pcard .spec{font-size:10px;line-height:1.42;min-height:0}
  .carousel .pcard .fcp-info{font-size:9.5px;gap:5px;margin-top:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .carousel .pcard .fcp-info svg{width:10px;height:10px}
  .carousel .pcard .fcp-foot{flex-wrap:wrap;row-gap:7px;padding-top:9px;gap:8px}
  .carousel .pcard .fcp-rate{font-size:11.5px;flex:1 1 auto}
  .carousel .pcard.is-active .fcp-rate{font-size:11px}
  .carousel .pcard .fcp-add{width:30px;height:30px}
  .carousel .pcard .fcp-add svg{width:13px;height:13px}
  .carousel .pcard .fcp-quick{height:28px;padding:0 10px;font-size:10px}
}
@media (max-width:400px){
  .carousel .pcard{flex:0 0 46vw}
  .carousel .pcard .media{height:104px}
  .carousel .pcard h3{font-size:11.5px}
  .carousel .pcard.is-active h3{font-size:12.5px}
}

/* ---------- motion + carousel chrome, matched to the featured rail ---------- */
.carousel .pcard:hover{transform:none}
.carousel .pcard.is-active:hover{transform:scale(1.045)}

.carousel-wrap .carousel{padding:26px 6px 30px;scroll-padding:0 6px;gap:18px}
.carousel-wrap .car-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:44px;height:44px;
  border-radius:50%;background:#fff;border:1px solid rgba(43,43,43,.14);color:#3A3A3A;display:grid;place-items:center;
  cursor:pointer;box-shadow:0 10px 22px -16px rgba(43,43,43,.5);transition:.18s}
.carousel-wrap .car-arrow:hover{background:#FC6F20;border-color:#FC6F20;color:#fff}
.carousel-wrap .car-arrow.prev{left:-6px}
.carousel-wrap .car-arrow.next{right:-6px}

@media (max-width:1024px){
  .carousel-wrap .carousel{gap:16px}
}
@media (max-width:860px){
  .carousel-wrap .carousel{gap:14px;padding:22px 4px 26px;scroll-padding:0 4px}
  .carousel-wrap .car-arrow{width:38px;height:38px}
  .carousel-wrap .car-arrow.prev{left:-2px}
  .carousel-wrap .car-arrow.next{right:-2px}
}
@media (max-width:640px){
  .carousel-wrap .carousel{gap:11px;padding:20px 5px 22px;scroll-padding:0 5px}
  .carousel-wrap .car-arrow{display:none}
}
