/* DST Catalog Teaser Pro - scoped widget styles */
.dst-ctp,.dst-ctp *{box-sizing:border-box}

.dst-ctp{
  --dst-ctp-surface-bg:#f8fafc;
  --dst-ctp-surface-border:#d7e2ef;
  --dst-ctp-surface-radius:26px;
  --dst-ctp-glow:rgba(255,193,7,.20);
  --dst-ctp-container-max:1200px;
  --dst-ctp-header-max:900px;
  --dst-ctp-header-mb:44px;
  --dst-ctp-gap:20px;
  --dst-ctp-card-h:320px;
  --dst-ctp-card-radius:20px;
  --dst-ctp-navy:#0f172a;
  --dst-ctp-blue:#2552e4;
  --dst-ctp-yellow:#facc15;
  --dst-ctp-yellow-hover:#eab308;
  --dst-ctp-text:#4b5563;
  position:relative;
  width:100%;
  overflow:visible;
  padding:40px 15px;
  margin:0;
  background:transparent;
}

.dst-ctp__surface{width:100%;position:relative;z-index:1;overflow:hidden;background:var(--dst-ctp-surface-bg);border:1px solid var(--dst-ctp-surface-border);border-radius:var(--dst-ctp-surface-radius);box-shadow:0 18px 50px rgba(11,21,40,.06);padding:50px 30px;isolation:isolate}
.dst-ctp__surface::before{content:"";position:absolute;top:-160px;right:-120px;width:360px;height:360px;border-radius:999px;pointer-events:none;background:radial-gradient(circle,var(--dst-ctp-glow) 0%,rgba(255,255,255,0) 62%);z-index:0}
.dst-ctp__surface > *{position:relative;z-index:1}
.dst-ctp__container{width:100%;max-width:var(--dst-ctp-container-max);margin-inline:auto;position:relative;z-index:2}

.dst-ctp__bg{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.dst-ctp__bg span{position:absolute;border-radius:50%;filter:blur(34px);opacity:.75;animation:dstCtpFloat 15s ease-in-out infinite}
.dst-ctp__bg span:nth-child(1){width:260px;height:260px;left:-40px;top:-60px;background:radial-gradient(circle,rgba(250,204,21,.15) 0%,rgba(250,204,21,.04) 58%,transparent 75%)}
.dst-ctp__bg span:nth-child(2){width:320px;height:320px;right:-70px;top:100px;background:radial-gradient(circle,rgba(37,82,228,.12) 0%,rgba(37,82,228,.03) 58%,transparent 75%);animation-delay:-4s}
.dst-ctp__bg span:nth-child(3){width:280px;height:280px;left:42%;bottom:-120px;background:radial-gradient(circle,rgba(250,204,21,.10) 0%,rgba(250,204,21,.03) 58%,transparent 75%);animation-delay:-8s}
.dst-ctp__bg i{position:absolute;inset:0;opacity:.22;background-image:linear-gradient(rgba(148,163,184,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.06) 1px,transparent 1px);background-size:34px 34px;mask-image:radial-gradient(circle at center,#000 35%,transparent 85%);-webkit-mask-image:radial-gradient(circle at center,#000 35%,transparent 85%)}
.dst-ctp__bg b{position:absolute;border-radius:50%;border:1px solid rgba(148,163,184,.12);animation:dstCtpRotate 26s linear infinite}
.dst-ctp__bg b:nth-of-type(1){width:460px;height:460px;top:-180px;right:-120px}
.dst-ctp__bg b:nth-of-type(2){width:340px;height:340px;bottom:-110px;left:-70px;animation-direction:reverse;animation-duration:22s}
.dst-ctp--no-bg-fx .dst-ctp__bg{display:none}

.dst-ctp__header{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:var(--dst-ctp-header-max);margin:0 auto var(--dst-ctp-header-mb)}
.dst-ctp__badge{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:auto;background:transparent;color:#0b1528;border:0;border-radius:0;padding:0;margin:0 0 24px;font-family:Inter,Arial,Helvetica,sans-serif;font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;line-height:1.5}
.dst-ctp__badge::before{content:"";width:10px;height:10px;border-radius:50%;background:#ffc107;box-shadow:0 0 0 6px rgba(255,193,7,.16);flex:0 0 auto}
.dst-ctp__title{width:100%;max-width:1000px;margin:0 auto 20px;color:#0b1528;font-family:Inter,Arial,Helvetica,sans-serif;font-size:clamp(32px,4vw,56px);font-weight:800;line-height:1.2}
.dst-ctp__title span{color:var(--dst-ctp-blue)}
.dst-ctp__desc{max-width:800px;margin:0 auto;color:var(--dst-ctp-text);font-family:Inter,Arial,Helvetica,sans-serif;font-size:clamp(16px,1.5vw,18px);line-height:1.6}

.dst-ctp__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--dst-ctp-gap);margin-bottom:32px}
.dst-ctp-card-wrap{min-width:0;height:var(--dst-ctp-card-h)}
.dst-ctp-card-wrap--large{grid-column:span 8}
.dst-ctp-card-wrap--small{grid-column:span 4}
.dst-ctp-card-wrap--full{grid-column:1 / -1}

.dst-ctp-card{position:relative;width:100%;height:100%;border-radius:var(--dst-ctp-card-radius);overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:25px;cursor:pointer;box-shadow:0 10px 24px rgba(0,0,0,.06);backface-visibility:hidden;transform:translateZ(0);border:1px solid rgba(255,255,255,.5);transition:box-shadow .35s ease,border-color .35s ease;text-decoration:none;background:#0b1528}
.dst-ctp-card:hover,.dst-ctp-card:focus-visible,.dst-ctp-card.is-open{box-shadow:0 22px 40px rgba(15,23,42,.12);border-color:rgba(250,204,21,.28)}
.dst-ctp-card__image{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;object-position:center;z-index:1;margin:0;padding:0;transition:transform .8s ease}
.dst-ctp-card:hover .dst-ctp-card__image,.dst-ctp-card:focus-visible .dst-ctp-card__image,.dst-ctp-card.is-open .dst-ctp-card__image{transform:scale(1.05)}
.dst-ctp-card__overlay{position:absolute;inset:0;z-index:2;background:linear-gradient(to top,rgba(15,23,42,.82) 0%,rgba(15,23,42,.48) 32%,rgba(15,23,42,.12) 62%,rgba(15,23,42,0) 100%);opacity:0;transition:opacity .35s ease;pointer-events:none}
.dst-ctp-card:hover .dst-ctp-card__overlay,.dst-ctp-card:focus-visible .dst-ctp-card__overlay,.dst-ctp-card.is-open .dst-ctp-card__overlay{opacity:1}
.dst-ctp-card__glow{position:absolute;inset:auto -10% -15%;height:55%;z-index:2;background:radial-gradient(circle at bottom center,rgba(250,204,21,.22) 0%,rgba(250,204,21,.05) 40%,transparent 75%);opacity:0;transition:opacity .35s ease,transform .35s ease}
.dst-ctp-card:hover .dst-ctp-card__glow,.dst-ctp-card:focus-visible .dst-ctp-card__glow,.dst-ctp-card.is-open .dst-ctp-card__glow{opacity:1;transform:translateY(-6px)}
.dst-ctp-card__content{position:relative;z-index:3;transition:transform .35s ease}
.dst-ctp-card:hover .dst-ctp-card__content,.dst-ctp-card:focus-visible .dst-ctp-card__content,.dst-ctp-card.is-open .dst-ctp-card__content{transform:translateY(-6px)}
.dst-ctp-card__title{color:#fff;font-family:Inter,Arial,Helvetica,sans-serif;font-size:clamp(18px,1.7vw,24px);font-weight:800;margin:0;line-height:1.3;text-shadow:0 10px 30px rgba(0,0,0,.22)}
.dst-ctp-card__text{color:rgba(255,255,255,.92);font-family:Inter,Arial,Helvetica,sans-serif;font-size:13px;line-height:1.7;margin:0;opacity:0;max-height:0;overflow:hidden;transform:translateY(14px);text-shadow:0 8px 20px rgba(0,0,0,.22);transition:opacity .35s ease,transform .35s ease,max-height .35s ease,margin-top .35s ease}
.dst-ctp-card:hover .dst-ctp-card__text,.dst-ctp-card:focus-visible .dst-ctp-card__text,.dst-ctp-card.is-open .dst-ctp-card__text{opacity:1;max-height:220px;transform:translateY(0);margin-top:14px}
.dst-ctp-card__action{display:inline-flex;align-items:center;gap:8px;color:var(--dst-ctp-yellow);font-size:14px;font-weight:800;margin-top:0;opacity:0;transform:translateY(14px);transition:opacity .3s ease,transform .3s ease,gap .25s ease,margin-top .3s ease,color .25s ease;text-decoration:none;pointer-events:none}
.dst-ctp-card__action svg,.dst-ctp__main-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s ease}
.dst-ctp-card:hover .dst-ctp-card__action,.dst-ctp-card:focus-visible .dst-ctp-card__action,.dst-ctp-card.is-open .dst-ctp-card__action{opacity:1;transform:translateY(0);margin-top:14px;gap:11px;pointer-events:auto}
.dst-ctp-card__action:hover,.dst-ctp-card__action:focus-visible{color:#fff}
.dst-ctp-card__action:hover svg,.dst-ctp-card__action:focus-visible svg,.dst-ctp__main-btn:hover svg,.dst-ctp__main-btn:focus-visible svg{transform:translateX(4px)}

.dst-ctp__actions{text-align:center}
.dst-ctp__main-btn{background:var(--dst-ctp-yellow);color:var(--dst-ctp-navy);font-family:Inter,Arial,Helvetica,sans-serif;font-weight:800;font-size:clamp(13px,1vw,14px);padding:20px 24px;border-radius:50px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;text-decoration:none;border:0;gap:10px;animation:dstCtpButtonPulse 1.8s infinite;transition:transform .3s ease,background-color .3s ease,box-shadow .3s ease}
.dst-ctp__main-btn:hover,.dst-ctp__main-btn:focus-visible{transform:translateY(-3px);background:var(--dst-ctp-yellow-hover);box-shadow:0 10px 20px rgba(250,204,21,.3)}

.dst-ctp :focus-visible{outline:3px solid #93c5fd;outline-offset:3px}
.dst-ctp--reveal .dst-ctp-reveal{opacity:0;transform:translateY(24px)}
.dst-ctp--reveal.dst-is-visible .dst-ctp-reveal{animation:dstCtpEntrance .7s cubic-bezier(.25,1,.5,1) forwards;animation-delay:var(--anim-delay,0s)}
body.elementor-editor-active .dst-ctp .dst-ctp-reveal{opacity:1!important;transform:none!important;animation:none!important}

@keyframes dstCtpFloat{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(0,-20px,0) scale(1.04)}}
@keyframes dstCtpRotate{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes dstCtpButtonPulse{0%{box-shadow:0 0 0 0 rgba(250,204,21,.5)}70%{box-shadow:0 0 0 12px rgba(250,204,21,0)}100%{box-shadow:0 0 0 0 rgba(250,204,21,0)}}
@keyframes dstCtpEntrance{0%{opacity:0;transform:translateY(24px)}100%{opacity:1;transform:translateY(0)}}

@media (max-width:1024px){
  .dst-ctp{padding:30px 15px}
  .dst-ctp__surface{padding:50px 25px}
  .dst-ctp__grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:20px}
  .dst-ctp-card-wrap,.dst-ctp-card-wrap--large,.dst-ctp-card-wrap--small,.dst-ctp-card-wrap--full{grid-column:auto;height:300px}
  .dst-ctp-card__text,.dst-ctp-card__action{opacity:0;max-height:0;margin-top:0;transform:translateY(14px);pointer-events:none}
  .dst-ctp-card.is-open .dst-ctp-card__text{opacity:1;max-height:220px;margin-top:14px;transform:translateY(0)}
  .dst-ctp-card.is-open .dst-ctp-card__action{opacity:1;margin-top:14px;transform:translateY(0);pointer-events:auto}
  .dst-ctp-card .dst-ctp-card__overlay,.dst-ctp-card .dst-ctp-card__glow{opacity:0}
  .dst-ctp-card.is-open .dst-ctp-card__overlay,.dst-ctp-card.is-open .dst-ctp-card__glow{opacity:1}
}

@media (max-width:767px){
  .dst-ctp{--dst-ctp-surface-radius:22px;--dst-ctp-header-mb:30px;--dst-ctp-gap:15px;padding:20px 10px}
  .dst-ctp__surface{padding:40px 10px}
  .dst-ctp__grid{grid-template-columns:1fr}
  .dst-ctp-card-wrap,.dst-ctp-card-wrap--large,.dst-ctp-card-wrap--small,.dst-ctp-card-wrap--full{height:280px}
  .dst-ctp-card{padding:20px}
  .dst-ctp-card__title{font-size:18px}
  .dst-ctp__title{font-size:28px}
  .dst-ctp__main-btn{width:100%;white-space:normal}
  .dst-ctp__bg b{display:none}
  .dst-ctp__bg i{opacity:.15}
}

@media (prefers-reduced-motion:reduce){
  .dst-ctp .dst-ctp__bg span,.dst-ctp .dst-ctp__bg b,.dst-ctp .dst-ctp-reveal,.dst-ctp .dst-ctp-card,.dst-ctp .dst-ctp-card__image,.dst-ctp .dst-ctp-card__overlay,.dst-ctp .dst-ctp-card__glow,.dst-ctp .dst-ctp-card__content,.dst-ctp .dst-ctp-card__text,.dst-ctp .dst-ctp-card__action,.dst-ctp .dst-ctp__main-btn{animation:none!important;transition:none!important;transform:none!important}
  .dst-ctp .dst-ctp-reveal{opacity:1!important}
}
