:root{
  --sp-ivory: #F7F5EF;
  --sp-paper: #FFFFFF;
  --sp-navy: #0B1220;
  --sp-navy2:#070B14;
  --sp-text: #0B1220;
  --sp-muted:#475569;

  --sp-gold:#FF6B35;
  --sp-goldSoft:#FF8C5A;

  --sp-radius: 22px;
  --sp-border: 1px solid rgba(11,18,32,.10);
  --sp-shadow: 0 18px 50px rgba(2,6,23,.12);

  --sp-container: min(1180px, calc(100% - 32px));
}

.servicesPremium{
  background:
    radial-gradient(55% 50% at 20% 0%, rgba(255,107,53,.08), rgba(255,107,53,0) 60%),
    radial-gradient(40% 40% at 90% 10%, rgba(11,18,32,.04), rgba(11,18,32,0) 55%),
    linear-gradient(180deg, var(--sp-ivory), #FFFFFF);
  padding: clamp(44px, 6vw, 92px) 0;
  color: var(--sp-text);
}

.servicesPremium__wrap{
  width: var(--sp-container);
  margin-inline: auto;
}

.servicesPremium__head{
  max-width: 860px;
  margin-bottom: clamp(18px, 3vw, 34px);
}

.servicesPremium__kicker{
  margin:0 0 10px;
  display:inline-flex;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(11,18,32,.12);
  background: rgba(255,255,255,.65);
  color: rgba(11,18,32,.78);
  font-size: 13px;
}

.servicesPremium__title{
  margin:0 0 10px;
  font-size: clamp(24px, 3.2vw, 44px);
  line-height: 1.12;
  text-wrap: balance;
  color: var(--sp-navy);
}

.servicesPremium__lead{
  margin:0;
  color: rgba(11,18,32,.72);
  font-size: clamp(14px, 1.15vw, 17px);
  line-height: 1.75;
  max-width: 70ch;
}

.servicesPremium__grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 22px;
}

.servicesPremium__card{
  position:relative;
  border-radius: var(--sp-radius);
  border: var(--sp-border);
  background: rgba(255,255,255,.78);
  box-shadow: var(--sp-shadow);
  padding: 0;
  overflow:hidden;
  transition: transform 180ms ease, box-shadow 220ms ease, border-color 220ms ease;
}

.servicesPremium__card::before{
  content:"";
  position:absolute;
  inset:-45%;
  background:
    radial-gradient(closest-side at 30% 30%, rgba(255,107,53,.10), rgba(255,107,53,0) 60%),
    radial-gradient(closest-side at 75% 60%, rgba(11,18,32,.06), rgba(11,18,32,0) 62%);
  opacity:.55;
  pointer-events:none;
  z-index:1;
}

.servicesPremium__card:hover{
  transform: translateY(-3px);
  border-color: rgba(255,107,53,.20);
  box-shadow: 0 22px 60px rgba(2,6,23,.12);
}

/* Service Image Container */
.servicesPremium__image{
  width: 100%;
  height: 200px;
  overflow: hidden;
  background: linear-gradient(135deg, rgba(255,107,53,.08), rgba(11,18,32,.04));
}

.servicesPremium__image picture{
  display: block;
  width: 100%;
  height: 100%;
}

.servicesPremium__image img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform 320ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  will-change: transform;
}

.servicesPremium__card:hover .servicesPremium__image img{
  transform: scale(1.08);
}

/* Content Wrapper */
.servicesPremium__top,
.servicesPremium__cardText,
.servicesPremium__bullets,
.servicesPremium__actions{
  padding-inline: 18px;
}

.servicesPremium__top{
  display:flex;
  align-items:center;
  gap: 10px;
  margin: 16px 0 8px 0;
  padding-top: 4px;
  position: relative;
  z-index: 2;
}

.servicesPremium__icon{
  width: 44px;
  height: 44px;
  border-radius: 16px;
  display:flex;
  align-items:center;
  justify-content:center;
  color: var(--sp-navy);
  background: linear-gradient(180deg, rgba(255,107,53,.15), rgba(255,107,53,.08));
  border: 1px solid rgba(255,107,53,.20);
}
.servicesPremium__icon svg{ width: 22px; height: 22px; }

.servicesPremium__cardTitle{
  margin:0;
  font-size: 18px;
  color: var(--sp-navy);
}

.servicesPremium__cardText{
  margin:0 0 10px;
  color: rgba(11,18,32,.76);
  line-height: 1.7;
  font-size: 14px;
  padding-inline: 18px;
}

.servicesPremium__bullets{
  list-style: none;
  padding: 0;
  margin: 0 0 14px;
  display:grid;
  gap: 8px;
  padding-inline: 18px;
}
.servicesPremium__bullets li{
  position:relative;
  padding-inline-start: 18px;
  color: rgba(11,18,32,.74);
  font-size: 13px;
}
.servicesPremium__bullets li::before{
  content:"";
  position:absolute;
  inset-inline-start: 0;
  top: 7px;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--sp-gold);
  box-shadow: 0 6px 16px rgba(255,107,53,.12);
}

.servicesPremium__actions{
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items:center;
  padding-inline: 18px;
  padding-bottom: 16px;
}

/* Buttons */
.spBtn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 11px 14px;
  border-radius: 14px;
  text-decoration:none;
  font-weight: 900;
  font-size: 13px;
  transition: transform 150ms ease, box-shadow 220ms ease, background 220ms ease, border-color 220ms ease;
}
.spBtn:active{ transform: scale(.985); }

.spBtn--primary{
  color: #ffffff;
  background: linear-gradient(180deg, var(--sp-goldSoft), var(--sp-gold));
  box-shadow: 0 14px 34px rgba(255,107,53,.15);
}
.spBtn--primary:hover{ box-shadow: 0 18px 46px rgba(255,107,53,.18); }

.spBtn--ghost{
  color: var(--sp-navy);
  background: rgba(255,255,255,.85);
  border: 1px solid rgba(11,18,32,.14);
}
.spBtn--ghost:hover{
  background: #fff;
  border-color: rgba(11,18,32,.22);
}

/* Footer */
.servicesPremium__footer{
  margin-top: 18px;
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  border-radius: var(--sp-radius);
  border: 1px solid rgba(11,18,32,.10);
  background: rgba(255,255,255,.72);
  padding: 14px 16px;
}

.servicesPremium__note strong{
  display:block;
  color: var(--sp-navy);
  margin-bottom: 2px;
}
.servicesPremium__note span{
  display:block;
  color: rgba(11,18,32,.70);
  font-size: 13px;
  line-height: 1.6;
}

.servicesPremium__footerActions{
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
}

/* Responsive */
@media (max-width: 980px){
  .servicesPremium__grid{ grid-template-columns: 1fr; }

  /* Mobile: Increase button touch targets */
  .spBtn{
    padding: 14px 18px;
    font-size: 14px;
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}

/* Reveal animation */
[data-sp-reveal]{
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 520ms ease, transform 520ms ease;
  will-change: opacity, transform;
}
.is-sp-revealed[data-sp-reveal]{
  opacity: 1;
  transform: translateY(0);
}
[data-sp-stagger]{
  transition-delay: calc(var(--sp-stagger, 0) * 1ms);
}

@media (prefers-reduced-motion: reduce){
  [data-sp-reveal]{
    opacity:1 !important;
    transform:none !important;
    transition:none !important;
  }
  .servicesPremium__card, .spBtn{ transition:none !important; }
}
