/* DST Capabilities Pro - scoped widget styles */
.dst-cap,.dst-cap *{box-sizing:border-box}

.dst-cap{
  --dst-cap-surface-bg:#f8fafc;
  --dst-cap-surface-border:#d7e2ef;
  --dst-cap-surface-radius:26px;
  --dst-cap-glow:rgba(255,193,7,.20);
  --dst-cap-container-max:1200px;
  --dst-cap-header-max:900px;
  --dst-cap-header-mb:44px;
  --dst-cap-grid-columns:4;
  --dst-cap-col-gap:20px;
  --dst-cap-row-gap:20px;
  --dst-cap-row-min:290px;
  --dst-cap-card-radius:24px;
  --dst-cap-icon-size:55px;
  --dst-cap-icon-font:22px;
  --dst-cap-image-min-h:340px;
  --dst-cap-navy:#0f172a;
  --dst-cap-navy-dark:#090e1a;
  --dst-cap-blue:#2552e4;
  --dst-cap-yellow:#ffc107;
  --dst-cap-gold:#facc15;
  --dst-cap-text:#4b5563;
  position:relative;
  width:100%;
  overflow:visible;
  padding:40px 15px;
  margin:0;
  background:transparent;
}

.dst-cap__surface{width:100%;position:relative;z-index:1;overflow:hidden;background:var(--dst-cap-surface-bg);border:1px solid var(--dst-cap-surface-border);border-radius:var(--dst-cap-surface-radius);box-shadow:0 18px 50px rgba(11,21,40,.06);padding:50px 30px;isolation:isolate}
.dst-cap__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-cap-glow) 0%,rgba(255,255,255,0) 62%);z-index:0}
.dst-cap__surface > *{position:relative;z-index:1}
.dst-cap__container{width:100%;max-width:var(--dst-cap-container-max);margin-inline:auto;position:relative;z-index:1}

.dst-cap__header{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:var(--dst-cap-header-max);margin:0 auto var(--dst-cap-header-mb)}
.dst-cap__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-cap__badge::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--dst-cap-yellow);box-shadow:0 0 0 6px rgba(255,193,7,.16);flex:0 0 auto}
.dst-cap__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-cap__title span{color:var(--dst-cap-blue)}
.dst-cap__desc{max-width:800px;margin:0 auto;color:var(--dst-cap-text);font-family:Inter,Arial,Helvetica,sans-serif;font-size:clamp(16px,1.5vw,18px);line-height:1.6}

.dst-cap__grid{display:grid;grid-template-columns:repeat(var(--dst-cap-grid-columns),minmax(0,1fr));gap:var(--dst-cap-row-gap) var(--dst-cap-col-gap);align-items:stretch;width:100%}
.dst-cap--bento .dst-cap__grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(var(--dst-cap-row-min),auto)}
.dst-cap--bento .dst-cap-card-wrap--wide{grid-column:1 / 3;grid-row:1 / 2}
.dst-cap--bento .dst-cap-card-wrap--tall{grid-column:3 / 4;grid-row:1 / 3}
.dst-cap--bento .dst-cap-card-wrap--square:nth-child(3){grid-column:1 / 2;grid-row:2 / 3}
.dst-cap--bento .dst-cap-card-wrap--square:nth-child(4){grid-column:2 / 3;grid-row:2 / 3}

.dst-cap-card-wrap{height:100%}
.dst-cap-card{position:relative;width:100%;height:100%;min-height:260px;display:flex;flex-direction:column;justify-content:flex-end;padding:35px;border-radius:var(--dst-cap-card-radius);overflow:hidden;box-shadow:0 4px 15px rgba(0,0,0,.03);transition:box-shadow .4s ease,transform .3s ease,border-color .3s ease}
.dst-cap-card:hover,.dst-cap-card.is-open{box-shadow:0 20px 40px -10px rgba(0,0,0,.12)}
.dst-cap-card:hover .dst-cap-card__icon svg,.dst-cap-card:hover .dst-cap-card__icon i{animation:dstCapIconPulse .4s ease-in-out}
.dst-cap-card__content{position:relative;z-index:3}
.dst-cap-card__icon{width:var(--dst-cap-icon-size);height:var(--dst-cap-icon-size);border-radius:14px;display:inline-flex;align-items:center;justify-content:center;font-size:var(--dst-cap-icon-font);margin-bottom:20px}
.dst-cap-card__icon svg,.dst-cap-card__icon i{width:45%;height:45%;font-size:45%;fill:currentColor;color:currentColor}
.dst-cap-card__title{font-family:Inter,Arial,Helvetica,sans-serif;font-size:22px;font-weight:800;line-height:1.3;margin:0}
.dst-cap-card__text{font-family:Inter,Arial,Helvetica,sans-serif;font-size:15px;line-height:1.6;margin:0}

.dst-cap-card--image{min-height:var(--dst-cap-image-min-h);border:0;padding:52px 35px 38px;cursor:pointer;background:#0b1528}
.dst-cap-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-cap-card--image:hover .dst-cap-card__image,.dst-cap-card--image.is-open .dst-cap-card__image{transform:scale(1.05)}
.dst-cap-card__overlay{--dst-cap-overlay:rgba(15,23,42,.82);position:absolute;inset:0;z-index:2;background:linear-gradient(to top,var(--dst-cap-overlay) 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-cap-card--image:hover .dst-cap-card__overlay,.dst-cap-card--image:focus-within .dst-cap-card__overlay,.dst-cap-card--image.is-open .dst-cap-card__overlay{opacity:1}
.dst-cap-card--image .dst-cap-card__content{max-width:620px}
.dst-cap-card--image .dst-cap-card__title{color:#fff;text-shadow:0 10px 30px rgba(0,0,0,.22)}
.dst-cap-card--image .dst-cap-card__icon{background:rgba(255,255,255,.18);color:#fff;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.dst-cap-card--image .dst-cap-card__text{color:rgba(255,255,255,.92);opacity:0;max-height:0;overflow:hidden;transform:translateY(14px);text-shadow:0 8px 20px rgba(0,0,0,.22);transition:opacity .35s ease,max-height .35s ease,transform .35s ease,margin-top .35s ease}
.dst-cap-card--image:hover .dst-cap-card__text,.dst-cap-card--image:focus-within .dst-cap-card__text,.dst-cap-card--image.is-open .dst-cap-card__text{opacity:1;max-height:170px;transform:translateY(0);margin-top:14px}
.dst-cap-card__link{display:inline-flex;align-items:center;gap:8px;margin-top:0;color:var(--dst-cap-gold);font-size:14px;font-weight:800;text-decoration:none;opacity:0;transform:translateY(14px);transition:opacity .3s ease,transform .3s ease,gap .25s ease,margin-top .3s ease,color .25s ease;pointer-events:none}
.dst-cap-card__link svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s ease}
.dst-cap-card--image:hover .dst-cap-card__link,.dst-cap-card--image:focus-within .dst-cap-card__link,.dst-cap-card--image.is-open .dst-cap-card__link{opacity:1;transform:translateY(0);margin-top:14px;pointer-events:auto}
.dst-cap-card__link:hover,.dst-cap-card__link:focus-visible{color:#fff;gap:11px}
.dst-cap-card__link:hover svg,.dst-cap-card__link:focus-visible svg{transform:translateX(4px)}

.dst-cap-card--navy{background:var(--dst-cap-navy-dark);border:0;justify-content:center}
.dst-cap-card--navy .dst-cap-card__title{color:#fff;font-size:26px;margin-bottom:10px}
.dst-cap-card--navy .dst-cap-card__text{color:#94a3b8}
.dst-cap-card--navy .dst-cap-card__icon{background:rgba(250,204,21,.1);color:var(--dst-cap-gold)}
.dst-cap-feature-list{list-style:none;padding:0;margin:25px 0 0}
.dst-cap-feature-list li{color:#e2e8f0;font-size:14px;font-weight:600;margin-bottom:12px;display:flex;align-items:center;gap:8px}
.dst-cap-feature-list li span{color:var(--dst-cap-gold);font-weight:900}

.dst-cap-card--white{background:#fff;border:1px solid #e2e8f0}
.dst-cap-card--white .dst-cap-card__title{color:var(--dst-cap-navy);margin-bottom:10px}
.dst-cap-card--white .dst-cap-card__text{color:var(--dst-cap-text)}
.dst-cap-card--white .dst-cap-card__icon{background:rgba(37,82,228,.08);color:var(--dst-cap-blue)}

.dst-cap :focus-visible{outline:3px solid #1d4ed8;outline-offset:3px;border-radius:10px}
.dst-cap--reveal .dst-cap-reveal{opacity:0;transform:translateY(30px)}
.dst-cap--reveal.dst-is-visible .dst-cap-reveal{animation:dstCapEntrance .8s cubic-bezier(.25,1,.5,1) forwards;animation-delay:var(--anim-delay,0s)}
body.elementor-editor-active .dst-cap .dst-cap-reveal{opacity:1!important;transform:none!important;animation:none!important}

@keyframes dstCapEntrance{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
@keyframes dstCapIconPulse{0%{transform:scale(1)}50%{transform:scale(1.15) translateY(-2px)}100%{transform:scale(1) translateY(0)}}

@media (max-width:1024px){
  .dst-cap{--dst-cap-grid-columns:2;--dst-cap-row-min:250px;padding:30px 15px}
  .dst-cap__surface{padding:50px 25px}
  .dst-cap--bento .dst-cap__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dst-cap--bento .dst-cap-card-wrap--wide{grid-column:1 / 3;grid-row:1 / 2}
  .dst-cap--bento .dst-cap-card-wrap--tall{grid-column:1 / 2;grid-row:2 / 3}
  .dst-cap--bento .dst-cap-card-wrap--square:nth-child(3){grid-column:2 / 3;grid-row:2 / 3}
  .dst-cap--bento .dst-cap-card-wrap--square:nth-child(4){grid-column:1 / 3;grid-row:3 / 4}
  .dst-cap-card--image{--dst-cap-image-min-h:320px}
  .dst-cap-card--image .dst-cap-card__text,.dst-cap .dst-cap-card__link{opacity:0;max-height:0;margin-top:0;transform:translateY(14px);pointer-events:none}
  .dst-cap-card--image .dst-cap-card__overlay{opacity:0}
  .dst-cap-card--image.is-open .dst-cap-card__overlay{opacity:1}
  .dst-cap-card--image.is-open .dst-cap-card__text{opacity:1;max-height:170px;transform:translateY(0);margin-top:14px}
  .dst-cap-card--image.is-open .dst-cap-card__link{opacity:1;transform:translateY(0);margin-top:14px;pointer-events:auto}
}

@media (max-width:767px){
  .dst-cap{--dst-cap-grid-columns:1;--dst-cap-surface-radius:22px;--dst-cap-header-mb:30px;--dst-cap-row-gap:15px;padding:20px 10px}
  .dst-cap__surface{padding:40px 10px}
  .dst-cap__grid,.dst-cap--bento .dst-cap__grid{grid-template-columns:1fr;gap:var(--dst-cap-row-gap)}
  .dst-cap--bento .dst-cap-card-wrap--wide,.dst-cap--bento .dst-cap-card-wrap--tall,.dst-cap--bento .dst-cap-card-wrap--square{grid-column:1 / 2!important;grid-row:auto!important}
  .dst-cap-card{padding:30px 25px}
  .dst-cap-card--image{min-height:300px;padding:38px 25px 28px}
  .dst-cap-card__icon{margin-bottom:15px}
  .dst-cap__title{font-size:28px}
}

@media (prefers-reduced-motion:reduce){
  .dst-cap .dst-cap-reveal,.dst-cap .dst-cap-card,.dst-cap .dst-cap-card__image,.dst-cap .dst-cap-card__text,.dst-cap .dst-cap-card__link,.dst-cap .dst-cap-card__icon svg,.dst-cap .dst-cap-card__icon i,.dst-cap .dst-cap-card__overlay{animation:none!important;transition:none!important;transform:none!important}
  .dst-cap .dst-cap-reveal{opacity:1!important}
}
