/* Enhanced sponsor highlight boxes */
.sponsor-highlight-link {
  display: block;
  text-decoration: none;
  color: inherit;
  margin: 24px 0;
}

.sponsor-highlight-link:hover {
  text-decoration: none;
  color: inherit;
}

.sponsor-highlight {
  background: linear-gradient(135deg, #f8f9ff 0%, #e8f1ff 100%);
  border: 2px solid #2563eb;
  border-radius: 12px;
  padding: 24px;
  box-shadow: 0 4px 12px rgba(37, 99, 235, 0.15);
  position: relative;
  overflow: hidden;
  transition: all 0.3s ease;
}

.sponsor-highlight-link:hover .sponsor-highlight {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(37, 99, 235, 0.2);
  border-color: #1d4ed8;
}

.sponsor-highlight::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, #3b82f6, #1d4ed8, #2563eb);
}

.sponsor-highlight-content {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}

.sponsor-highlight-logo {
  flex-shrink: 0;
  transform: translateY(2px);
}

.sponsor-logo {
  height: 50px;
  width: auto;
  max-width: 100px;
}

/* Mobile responsive adjustments */
@media (max-width: 640px) {
  .sponsor-highlight-logo {
    align-self: center;
    text-align: center;
    transform: none;
  }
  
  .sponsor-logo {
    height: 40px;
    max-width: 80px;
  }
}

.sponsor-highlight-text {
  flex: 1;
  min-width: 250px;
}

.sponsor-highlight-title {
  font-size: 18px;
  font-weight: 600;
  color: #1e40af;
  margin: 0 0 8px 0;
  line-height: 1.3;
}

.sponsor-highlight-description {
  font-size: 14px;
  color: #374151;
  margin: 0;
  line-height: 1.4;
}

.sponsor-highlight-button {
  flex-shrink: 0;
  background: linear-gradient(135deg, #3b82f6, #2563eb);
  color: white;
  padding: 12px 24px;
  border-radius: 8px;
  font-weight: 600;
  font-size: 14px;
  transition: all 0.3s ease;
  box-shadow: 0 2px 8px rgba(37, 99, 235, 0.3);
  border: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
}

.sponsor-highlight-link:hover .sponsor-highlight-button {
  background: linear-gradient(135deg, #2563eb, #1d4ed8);
  box-shadow: 0 4px 16px rgba(37, 99, 235, 0.4);
}

.sponsor-highlight-button:hover {
  background: linear-gradient(135deg, #1d4ed8, #1e40af) !important;
  box-shadow: 0 6px 20px rgba(37, 99, 235, 0.5) !important;
  transform: scale(1.02);
}

.sponsor-highlight-button::after {
  content: '→';
  font-size: 16px;
  transition: transform 0.2s ease;
}

.sponsor-highlight-link:hover .sponsor-highlight-button::after {
  transform: translateX(2px);
}

.sponsor-highlight-button:hover::after {
  transform: translateX(4px) !important;
}

/* Responsive design */
@media (max-width: 640px) {
  .sponsor-highlight-link {
    margin: 20px 0;
  }
  
  .sponsor-highlight {
    padding: 20px;
  }
  
  .sponsor-highlight-content {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
  
  .sponsor-highlight-button {
    width: 100%;
    justify-content: center;
  }
  
  .sponsor-highlight-title {
    font-size: 16px;
  }
}

/* Alternative color schemes for variety */
.sponsor-highlight.green {
  background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%);
  border-color: #16a34a;
  box-shadow: 0 4px 12px rgba(22, 163, 74, 0.15);
}

.sponsor-highlight-link:hover .sponsor-highlight.green {
  box-shadow: 0 6px 20px rgba(22, 163, 74, 0.2);
  border-color: #15803d;
}

.sponsor-highlight.green::before {
  background: linear-gradient(90deg, #22c55e, #16a34a, #15803d);
}



.sponsor-highlight.green .sponsor-highlight-title {
  color: #14532d;
}

.sponsor-highlight.green .sponsor-highlight-button {
  background: linear-gradient(135deg, #22c55e, #16a34a);
  box-shadow: 0 2px 8px rgba(22, 163, 74, 0.3);
}

.sponsor-highlight-link:hover .sponsor-highlight.green .sponsor-highlight-button {
  background: linear-gradient(135deg, #16a34a, #15803d);
  box-shadow: 0 4px 16px rgba(22, 163, 74, 0.4);
}

.sponsor-highlight.green .sponsor-highlight-button:hover {
  background: linear-gradient(135deg, #15803d, #166534) !important;
  box-shadow: 0 6px 20px rgba(22, 163, 74, 0.5) !important;
  transform: scale(1.02);
}

.sponsor-highlight.purple {
  background: linear-gradient(135deg, #faf5ff 0%, #f3e8ff 100%);
  border-color: #9333ea;
  box-shadow: 0 4px 12px rgba(147, 51, 234, 0.15);
}

.sponsor-highlight-link:hover .sponsor-highlight.purple {
  box-shadow: 0 6px 20px rgba(147, 51, 234, 0.2);
  border-color: #7c3aed;
}

.sponsor-highlight.purple::before {
  background: linear-gradient(90deg, #a855f7, #9333ea, #7c3aed);
}



.sponsor-highlight.purple .sponsor-highlight-title {
  color: #581c87;
}

.sponsor-highlight.purple .sponsor-highlight-button {
  background: linear-gradient(135deg, #a855f7, #9333ea);
  box-shadow: 0 2px 8px rgba(147, 51, 234, 0.3);
}

.sponsor-highlight-link:hover .sponsor-highlight.purple .sponsor-highlight-button {
  background: linear-gradient(135deg, #9333ea, #7c3aed);
  box-shadow: 0 4px 16px rgba(147, 51, 234, 0.4);
}

.sponsor-highlight.purple .sponsor-highlight-button:hover {
  background: linear-gradient(135deg, #7c3aed, #6d28d9) !important;
  box-shadow: 0 6px 20px rgba(147, 51, 234, 0.5) !important;
  transform: scale(1.02);
}

/* Red variant for Frontier */
.sponsor-highlight.red {
  background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%);
  border-color: #ef4444;
  box-shadow: 0 4px 12px rgba(239, 68, 68, 0.15);
}

.sponsor-highlight-link:hover .sponsor-highlight.red {
  box-shadow: 0 6px 20px rgba(239, 68, 68, 0.2);
  border-color: #dc2626;
}

.sponsor-highlight.red::before {
  background: linear-gradient(90deg, #f87171, #ef4444, #dc2626);
}

.sponsor-highlight.red .sponsor-highlight-title {
  color: #991b1b;
}

.sponsor-highlight.red .sponsor-highlight-button {
  background: linear-gradient(135deg, #f87171, #ef4444);
  box-shadow: 0 2px 8px rgba(239, 68, 68, 0.3);
}

.sponsor-highlight-link:hover .sponsor-highlight.red .sponsor-highlight-button {
  background: linear-gradient(135deg, #ef4444, #dc2626);
  box-shadow: 0 4px 16px rgba(239, 68, 68, 0.4);
}

.sponsor-highlight.red .sponsor-highlight-button:hover {
  background: linear-gradient(135deg, #dc2626, #b91c1c) !important;
  box-shadow: 0 6px 20px rgba(239, 68, 68, 0.5) !important;
  transform: scale(1.02);
}

/* Red hero variant for Frontier */
.sponsor-hero.red {
  background: linear-gradient(135deg, #fef2f2 0%, #fecaca 50%, #fca5a5 100%);
  border-color: #fca5a5;
  color: #7f1d1d;
}

.sponsor-hero.red::before {
  background: linear-gradient(135deg, rgba(239, 68, 68, 0.05) 0%, rgba(185, 28, 28, 0.05) 100%);
}

.sponsor-hero-link:hover .sponsor-hero.red {
  border-color: #f87171;
}

.sponsor-hero.red .sponsor-hero-title {
  color: #7f1d1d;
}

.sponsor-hero.red .sponsor-hero-button {
  background: linear-gradient(135deg, #ef4444, #dc2626);
  box-shadow: 0 8px 20px rgba(239, 68, 68, 0.4);
}

.sponsor-hero-link:hover .sponsor-hero.red .sponsor-hero-button {
  background: linear-gradient(135deg, #dc2626, #b91c1c);
  box-shadow: 0 12px 28px rgba(239, 68, 68, 0.5);
}

/* Magenta hero variant for T-Mobile */
.sponsor-hero.magenta {
  background: linear-gradient(135deg, #fef7ff 0%, #fae8ff 50%, #f3e8ff 100%);
  border-color: #d946ef;
  color: #7c2d12;
}

.sponsor-hero.magenta::before {
  background: linear-gradient(135deg, rgba(237, 0, 140, 0.05) 0%, rgba(168, 85, 247, 0.05) 100%);
}

.sponsor-hero-link:hover .sponsor-hero.magenta {
  border-color: #c026d3;
}

.sponsor-hero.magenta .sponsor-hero-title {
  color: #7c2d12;
}

.sponsor-hero.magenta .sponsor-hero-button {
  background: linear-gradient(135deg, #ed008c, #c026d3);
  box-shadow: 0 8px 20px rgba(237, 0, 140, 0.4);
}

.sponsor-hero-link:hover .sponsor-hero.magenta .sponsor-hero-button {
  background: linear-gradient(135deg, #c026d3, #a21caf);
  box-shadow: 0 12px 28px rgba(237, 0, 140, 0.5);
}

/* T-Mobile specific styling - two-column layout with aligned content */
.sponsor-hero.tmobile {
  background: linear-gradient(135deg, #fef7ff 0%, #fae8ff 50%, #f3e8ff 100%);
  border-color: #d946ef;
  color: #7c2d12;
  position: relative;
  padding: 6px 16px 10px 16px;
  margin: 16px 0;
}

.sponsor-hero.tmobile::before {
  background: linear-gradient(135deg, rgba(237, 0, 140, 0.05) 0%, rgba(168, 85, 247, 0.05) 100%);
}

.sponsor-hero.tmobile .sponsor-hero-content {
  display: flex;
  align-items: center;
  gap: 12px;
}

.sponsor-hero.tmobile .sponsor-hero-left {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
}

.sponsor-hero.tmobile .sponsor-hero-logo {
  padding: 0 0 6px 0;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
}

.sponsor-hero.tmobile .sponsor-hero-logo img {
  height: auto;
  max-width: 240px;
  max-height: 50px;
  object-fit: contain;
  display: block;
  margin: 0;
}

  .sponsor-hero.tmobile .sponsor-tag {
    position: absolute;
    top: 2px;
    right: 4px;
    margin: 0;
    z-index: 10;
    padding: 2px 4px;
    font-size: 11px;
  }

.sponsor-hero.tmobile .sponsor-hero-features {
  margin: -8px 0 0 0;
  padding-left: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.sponsor-hero.tmobile .sponsor-hero-features li {
  font-size: 14px;
  color: #475569;
  margin: 2px 0;
  line-height: 1.3;
  display: flex;
  align-items: flex-start;
  gap: 6px;
}

.sponsor-hero.tmobile .sponsor-hero-features li::before {
  content: '✓';
  color: #059669;
  font-weight: bold;
  font-size: 14px;
  flex-shrink: 0;
  margin-top: 1px;
}

.sponsor-hero.tmobile .sponsor-hero-messaging {
  width: 100%;
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid rgba(212, 70, 239, 0.15);
  text-align: center;
}

.sponsor-hero.tmobile .sponsor-hero-description {
  font-size: 14px;
  font-weight: 600;
  color: #7c2d12;
  margin: 0;
  line-height: 1.3;
  text-align: center;
}

.sponsor-hero.tmobile .sponsor-hero-cta {
  flex-shrink: 0;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding-top: 32px;
}

.sponsor-hero.tmobile .sponsor-hero-button {
  background: linear-gradient(135deg, #ed008c, #c026d3);
  box-shadow: 0 6px 16px rgba(237, 0, 140, 0.4);
  padding: 12px 18px 12px 24px; /* Added extra left padding to offset arrow */
  font-size: 15px;
  min-height: 48px;
  display: flex;
  align-items: center;
  cursor: pointer;
}

.sponsor-hero.tmobile .sponsor-hero-button::after {
  content: '➜';
  font-size: 16px;
  transition: transform 0.3s ease;
  margin-left: 6px;
}

/* Button link styling */
.sponsor-hero-button-link {
  text-decoration: none;
  color: inherit;
  cursor: pointer;
}

.sponsor-hero-button-link:hover .sponsor-hero-button {
  background: linear-gradient(135deg, #c026d3, #a21caf);
  box-shadow: 0 12px 28px rgba(237, 0, 140, 0.5);
}

.sponsor-hero-button-link:hover .sponsor-hero-button::after {
  transform: translateX(4px);
}

/* T-Mobile Background Color Variants */
.sponsor-hero.tmobile.tmobile-pink {
  background: linear-gradient(135deg, #fef7ff 0%, #fae8ff 50%, #f3e8ff 100%);
  border-color: #d946ef;
}

.sponsor-hero.tmobile.tmobile-blue {
  background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 50%, #cbd5e1 100%);
  border-color: #e2e8f0;
  color: #1e293b;
}

.sponsor-hero.tmobile.tmobile-blue::before {
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.05) 0%, rgba(37, 99, 235, 0.05) 100%);
}


.sponsor-hero.tmobile.tmobile-blue .sponsor-hero-description {
  color: #1e293b;
}

.sponsor-hero.tmobile.tmobile-blue .sponsor-hero-messaging {
  border-top: 1px solid rgba(59, 130, 246, 0.15);
}

.sponsor-hero.tmobile.tmobile-blue .sponsor-hero-button {
  background: linear-gradient(135deg, #3b82f6, #1d4ed8);
  box-shadow: 0 8px 20px rgba(59, 130, 246, 0.4);
  cursor: pointer;
}

.sponsor-hero-button-link:hover .sponsor-hero.tmobile.tmobile-blue .sponsor-hero-button {
  background: linear-gradient(135deg, #2563eb, #1e40af);
  box-shadow: 0 12px 28px rgba(59, 130, 246, 0.5);
}

/* Remove corner positioning styles - using standard sponsor tag placement */

/* Mobile responsive for T-Mobile */
@media (max-width: 768px) {
  .sponsor-hero.tmobile {
    padding: 6px 10px 10px 10px;
    margin: 12px 0;
  }
  
  .sponsor-hero.tmobile .sponsor-hero-content {
    flex-direction: column;
    gap: 8px;
    text-align: center;
  }
  
  .sponsor-hero.tmobile .sponsor-hero-left {
    gap: 0px;
    align-items: center;
  }
  
  .sponsor-hero.tmobile .sponsor-hero-logo {
    gap: 0;
    padding-top: 10px;
  }
  
  .sponsor-hero.tmobile .sponsor-tag {
    position: absolute;
    top: 1px;
    right: 2px;
    margin: 0;
    z-index: 10;
    padding: 2px 4px;
    font-size: 10px;
  }
  
  .sponsor-hero.tmobile .sponsor-hero-logo img {
    max-width: 220px;
    max-height: 48px;
  }
  
  .sponsor-hero.tmobile .sponsor-hero-messaging {
    margin-top: 6px;
    padding-top: 6px;
    text-align: left;
  }
  
  .sponsor-hero.tmobile .sponsor-hero-description {
    font-size: 13px;
    text-align: left;
  }
  
  .sponsor-hero.tmobile .sponsor-hero-features {
    text-align: center;
  }
  
  .sponsor-hero.tmobile .sponsor-hero-cta {
    padding-top: 4px;
  }
  
  .sponsor-hero.tmobile .sponsor-hero-button {
    width: 100%;
    justify-content: center;
    min-height: 46px;
    padding: 11px 18px 11px 24px; /* Added extra left padding to offset arrow */
    font-size: 14px;
  }
  
  .sponsor-hero.tmobile .sponsor-hero-features li {
    font-size: 13px;
    margin: 1px 0;
    gap: 5px;
  }
}

@media (max-width: 480px) {
  .sponsor-hero.tmobile .sponsor-hero-logo img {
    max-width: 200px;
    max-height: 45px;
  }
  
  .sponsor-hero.tmobile .sponsor-hero-features li {
    font-size: 12px;
  }
  
  .sponsor-hero.tmobile .sponsor-hero-description {
    font-size: 12px;
  }
}

/* Simple text-based sponsor links */
.sponsor-text-link {
  margin: 20px 0;
  text-align: center;
  font-size: 1.15rem;
  line-height: 1.5;
  padding: 16px 20px;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  background-color: #f9fafb;
  color: #6b7280;
}

.sponsor-text-link a {
  color: #2563eb;
  text-decoration: underline;
  font-weight: 500;
  transition: color 0.2s ease;
}

.sponsor-text-link a:hover {
  color: #1d4ed8;
  text-decoration: underline;
}

/* Hero-style sponsor highlight - prominent top-of-fold card */
.sponsor-hero-link {
  display: block;
  text-decoration: none !important;
  color: inherit;
}

.sponsor-hero-link:hover {
  text-decoration: none !important;
  color: inherit;
}

.sponsor-hero {
  background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 50%, #cbd5e1 100%);
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  padding: 40px;
  margin: 32px 0;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08), 0 8px 16px rgba(0, 0, 0, 0.04);
  position: relative;
  overflow: hidden;
  transition: all 0.4s ease;
  color: #1e293b;
}

.sponsor-hero::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.05) 0%, rgba(147, 51, 234, 0.05) 100%);
  opacity: 0;
  transition: opacity 0.4s ease;
}

.sponsor-hero-link:hover .sponsor-hero::before {
  opacity: 1;
}

.sponsor-hero-link:hover .sponsor-hero {
  transform: translateY(-4px);
  box-shadow: 0 25px 50px rgba(0, 0, 0, 0.12), 0 12px 24px rgba(0, 0, 0, 0.08);
  border-color: #cbd5e1;
}

.sponsor-hero-content {
  display: flex;
  align-items: center;
  gap: 20px;
  position: relative;
  z-index: 2;
  flex-wrap: wrap;
}

.sponsor-hero-logo {
  flex-shrink: 0;
  padding: 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.sponsor-hero-logo img {
  height: 60px;
  width: auto;
  max-width: 200px;
}

/* Specific adjustment for Verizon logo in Urbana - desktop only */
@media (min-width: 769px) {
  .verizon-urbana-logo {
    transform: translateY(-4px);
  }
}

/* Sponsored tag - positioned below logo */
.sponsor-tag {
  background: none;
  border: none;
  border-radius: 0;
  padding: 2px 4px;
  font-size: 10px;
  color: #6b7280;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  backdrop-filter: none;
  margin-top: 8px;
  text-align: center;
  display: inline-block;
}



.sponsor-hero-text {
  flex: 1;
  min-width: 250px;
}

.sponsor-hero-title {
  font-size: 28px;
  font-weight: 700;
  color: #1e293b;
  margin: 0 0 12px 0;
  line-height: 1.2;
}

.sponsor-hero-features {
  list-style: none;
  padding: 0;
  margin: 0;
}

.sponsor-hero-features li {
  font-size: 18px;
  color: #475569;
  margin: 8px 0;
  padding-left: 24px;
  position: relative;
  line-height: 1.4;
}

.sponsor-hero-features li::before {
  content: '✓';
  position: absolute;
  left: 0;
  color: #059669;
  font-weight: bold;
  font-size: 16px;
}

.sponsor-hero-cta {
  flex-shrink: 0;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}

.sponsor-hero-button {
  background: linear-gradient(135deg, #3b82f6, #1d4ed8);
  color: white;
  padding: 14px 24px;
  border-radius: 12px;
  font-weight: 700;
  font-size: 15px;
  border: none;
  box-shadow: 0 8px 20px rgba(59, 130, 246, 0.4);
  transition: all 0.3s ease;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  letter-spacing: 0.5px;
  white-space: nowrap;
  cursor: pointer;
}

.sponsor-hero-button::after {
  content: '→';
  font-size: 18px;
  transition: transform 0.3s ease;
}

.sponsor-hero-link:hover .sponsor-hero-button {
  background: linear-gradient(135deg, #2563eb, #1e40af);
  box-shadow: 0 12px 28px rgba(59, 130, 246, 0.5);
  transform: scale(1.05);
}

.sponsor-hero-link:hover .sponsor-hero-button::after {
  transform: translateX(4px);
}

/* Responsive design for hero sponsor */
@media (max-width: 768px) {
  .sponsor-hero {
    padding: 24px;
    margin: 24px 0;
  }
  
  .sponsor-hero-content {
    flex-direction: column;
    gap: 24px;
    text-align: center;
  }
  
  .sponsor-hero-features {
    text-align: left;
  }
  
  .sponsor-hero-logo {
    align-self: center;
    padding: 0;
  }
  
  .sponsor-hero-logo img {
    height: 50px;
    max-width: 150px;
  }
  
  .sponsor-hero-text {
    min-width: auto;
  }
  
  .sponsor-hero-title {
    font-size: 24px;
  }
  
  .sponsor-hero-features li {
    font-size: 16px;
  }
  
  .sponsor-hero-button {
    width: 100%;
    justify-content: center;
    padding: 14px 24px;
  }
}

@media (max-width: 480px) {
  .sponsor-hero {
    padding: 20px;
    border-radius: 12px;
  }
  
  .sponsor-hero-title {
    font-size: 20px;
  }
  
  .sponsor-hero-features li {
    font-size: 15px;
  }
}

/* T-Mobile Satellite - Streamlined style matching AT&T placement */
.sponsor-tmobile-satellite-link {
  display: block;
  text-decoration: none;
  color: inherit;
  margin: 24px 0;
}

.sponsor-tmobile-satellite-link:hover {
  text-decoration: none;
  color: inherit;
}

.sponsor-tmobile-satellite {
  background: linear-gradient(135deg, #fefcff 0%, #fcf4ff 100%);
  border: 2px solid #d946ef;
  border-radius: 12px;
  padding: 24px;
  box-shadow: 0 4px 12px rgba(212, 70, 239, 0.15);
  position: relative;
  overflow: hidden;
  transition: all 0.3s ease;
}

.sponsor-tmobile-satellite-link:hover .sponsor-tmobile-satellite {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(212, 70, 239, 0.2);
  border-color: #c026d3;
}

.sponsor-tmobile-satellite::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, #ed008c, #c026d3, #d946ef);
}

.sponsor-tmobile-satellite-content {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}

.sponsor-tmobile-satellite-logo {
  flex-shrink: 0;
  transform: translateY(2px);
  display: flex;
  flex-direction: column;
  align-items: center;
}

.sponsor-tmobile-satellite-logo img {
  height: 50px;
  width: auto;
}

.sponsor-tmobile-satellite-tag {
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  padding: 6px 12px;
  font-size: 12px;
  color: #6b7280;
  font-weight: 500;
  letter-spacing: 0.5px;
  backdrop-filter: blur(4px);
  margin-top: 8px;
  text-align: center;
  display: inline-block;
}

.sponsor-tmobile-satellite-text {
  flex: 1;
  min-width: 250px;
}

.sponsor-tmobile-satellite-title {
  font-size: 18px;
  font-weight: 600;
  color: #d946ef;
  margin: 0 0 8px 0;
  line-height: 1.3;
}

.sponsor-tmobile-satellite-description {
  font-size: 14px;
  color: #374151;
  margin: 0;
  line-height: 1.4;
}

.sponsor-tmobile-satellite-button {
  flex-shrink: 0;
  background: linear-gradient(135deg, #ed008c, #c026d3);
  color: white;
  padding: 12px 24px;
  border-radius: 8px;
  font-weight: 600;
  font-size: 14px;
  transition: all 0.3s ease;
  box-shadow: 0 2px 8px rgba(212, 70, 239, 0.3);
  border: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
}

.sponsor-tmobile-satellite-button::after {
  content: '➜';
  font-size: 16px;
  transition: transform 0.2s ease;
}

.sponsor-tmobile-satellite-link:hover .sponsor-tmobile-satellite-button {
  background: linear-gradient(135deg, #c026d3, #a21caf);
  box-shadow: 0 4px 16px rgba(212, 70, 239, 0.4);
}

.sponsor-tmobile-satellite-link:hover .sponsor-tmobile-satellite-button::after {
  transform: translateX(2px);
}

.sponsor-tmobile-satellite-button:hover::after {
  transform: translateX(4px) !important;
}

/* Mobile responsive */
@media (max-width: 640px) {
  .sponsor-tmobile-satellite-link {
    margin: 20px 0;
  }
  
  .sponsor-tmobile-satellite {
    padding: 20px;
  }
  
  .sponsor-tmobile-satellite-content {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
  
  .sponsor-tmobile-satellite-logo {
    align-self: center;
    text-align: center;
    transform: none;
  }
  
  .sponsor-tmobile-satellite-logo img {
    height: 40px;
    width: auto;
  }
  
  .sponsor-tmobile-satellite-button {
    width: 100%;
    justify-content: center;
  }
  
  .sponsor-tmobile-satellite-title {
    font-size: 16px;
  }
}

/* T-Mobile iPhone 17 Pro Placement - Similar to satellite but with phone focus */
.sponsor-tmobile-iphone17-link {
  display: block;
  text-decoration: none;
  color: inherit;
  margin: 24px 0;
}

.sponsor-tmobile-iphone17-link:hover {
  text-decoration: none;
  color: inherit;
}

.sponsor-tmobile-iphone17 {
  background: linear-gradient(135deg, #fefcff 0%, #fcf4ff 100%);
  border: 2px solid #d946ef;
  border-radius: 12px;
  padding: 24px;
  box-shadow: 0 4px 12px rgba(212, 70, 239, 0.15);
  position: relative;
  overflow: hidden;
  transition: all 0.3s ease;
}

.sponsor-tmobile-iphone17-link:hover .sponsor-tmobile-iphone17 {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(212, 70, 239, 0.2);
  border-color: #c026d3;
}

.sponsor-tmobile-iphone17::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, #ed008c, #c026d3, #d946ef);
}

.sponsor-tmobile-iphone17-content {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}

.sponsor-tmobile-iphone17-phone-container {
  flex-shrink: 0;
}

.sponsor-tmobile-iphone17-phone {
  height: 160px;
  width: auto;
}

.sponsor-tmobile-iphone17-text-container {
  flex: 1;
  min-width: 250px;
}

.sponsor-tmobile-iphone17-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 12px;
}

.sponsor-tmobile-iphone17-logo {
  height: 45px;
  width: auto;
}

.sponsor-tmobile-iphone17-tag {
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  padding: 6px 12px;
  font-size: 12px;
  color: #6b7280;
  font-weight: 500;
  letter-spacing: 0.5px;
  backdrop-filter: blur(4px);
  text-align: center;
  display: inline-block;
}

.sponsor-tmobile-iphone17-title {
  font-size: 18px;
  font-weight: 700;
  color: #d946ef;
  margin: 0 0 8px 0;
  line-height: 1.3;
}

.sponsor-tmobile-iphone17-description {
  font-size: 14px;
  color: #374151;
  margin: 0 0 8px 0;
  line-height: 1.4;
}

.sponsor-tmobile-iphone17-disclaimer {
  font-size: 12px;
  color: #6b7280;
  margin: 0;
  line-height: 1.3;
  font-style: italic;
}

.sponsor-tmobile-iphone17-cta-container {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}

.sponsor-tmobile-iphone17-button {
  background: linear-gradient(135deg, #ed008c, #c026d3);
  color: white;
  padding: 12px 24px;
  border-radius: 8px;
  font-weight: 600;
  font-size: 14px;
  transition: all 0.3s ease;
  box-shadow: 0 2px 8px rgba(212, 70, 239, 0.3);
  border: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
}

.sponsor-tmobile-iphone17-button::after {
  content: '➜';
  font-size: 16px;
  transition: transform 0.2s ease;
}

.sponsor-tmobile-iphone17-link:hover .sponsor-tmobile-iphone17-button {
  background: linear-gradient(135deg, #c026d3, #a21caf);
  box-shadow: 0 4px 16px rgba(212, 70, 239, 0.4);
}

.sponsor-tmobile-iphone17-link:hover .sponsor-tmobile-iphone17-button::after {
  transform: translateX(2px);
}

.sponsor-tmobile-iphone17-button:hover::after {
  transform: translateX(4px) !important;
}

/* Hide mobile-specific elements on desktop */
.sponsor-tmobile-iphone17-mobile-logo,
.sponsor-tmobile-iphone17-mobile-tag {
  display: none;
}

/* Mobile responsive for iPhone 17 placement */
@media (max-width: 640px) {
  .sponsor-tmobile-iphone17-link {
    margin: 20px 0;
  }
  
  .sponsor-tmobile-iphone17 {
    padding: 20px;
  }
  
  .sponsor-tmobile-iphone17-content {
    flex-direction: column;
    align-items: center;
    gap: 2px;
  }
  
  /* Hide desktop phone container on mobile */
  .sponsor-tmobile-iphone17-phone-container {
    display: none;
  }
  
  /* Show mobile logo first */
  .sponsor-tmobile-iphone17-mobile-logo {
    display: block;
    text-align: center;
  }
  
  .sponsor-tmobile-iphone17-logo-mobile {
    height: 50px;
    width: auto;
  }
  
  /* Show mobile sponsored tag second */
  .sponsor-tmobile-iphone17-mobile-tag {
    display: block;
    text-align: center;
    margin: 0;
  }
  
  .sponsor-tmobile-iphone17-tag-mobile {
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    padding: 6px 12px;
    font-size: 12px;
    color: #6b7280;
    font-weight: 500;
    letter-spacing: 0.5px;
    backdrop-filter: blur(4px);
    display: inline-block;
  }
  
  /* Hide desktop header on mobile */
  .sponsor-tmobile-iphone17-header {
    display: none;
  }
  
  .sponsor-tmobile-iphone17-text-container {
    width: 100%;
    min-width: auto;
  }
  
  /* Add mobile phone image after sponsored tag */
  .sponsor-tmobile-iphone17-text-container::before {
    content: '';
    display: block;
    height: 200px;
    width: auto;
    background-image: url('/static/iphone 17 pro orange.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin: 8px auto 8px auto;
  }
  
  .sponsor-tmobile-iphone17-text {
    text-align: left;
  }
  
  .sponsor-tmobile-iphone17-title {
    font-size: 18px;
    text-align: center;
    margin: 0 0 8px 0;
  }
  
  .sponsor-tmobile-iphone17-description,
  .sponsor-tmobile-iphone17-disclaimer {
    text-align: left;
  }
  
  /* Hide desktop CTA container on mobile */
  .sponsor-tmobile-iphone17-cta-container {
    display: none;
  }
  
  /* Add mobile CTA button after text */
  .sponsor-tmobile-iphone17-text::after {
    content: 'Get Offer ➜';
    display: block;
    width: 100%;
    background: linear-gradient(135deg, #ed008c, #c026d3);
    color: white;
    padding: 12px 24px;
    border-radius: 8px;
    font-weight: 600;
    font-size: 14px;
    text-align: center;
    margin-top: 12px;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(212, 70, 239, 0.3);
  }
}

/* Metro by T-Mobile Placement - Streamlined style */
.sponsor-metro-link {
  display: block;
  text-decoration: none;
  color: inherit;
  margin: 24px 0;
}

.sponsor-metro-link:hover {
  text-decoration: none;
  color: inherit;
}

.sponsor-metro {
  background: #ffffff;
  border: 2px solid #a855f7;
  border-radius: 12px;
  padding: 24px;
  box-shadow: 0 4px 12px rgba(168, 85, 247, 0.15);
  position: relative;
  overflow: hidden;
  transition: all 0.3s ease;
}

.sponsor-metro-link:hover .sponsor-metro {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(168, 85, 247, 0.2);
  border-color: #9333ea;
}

.sponsor-metro::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, #a855f7, #9333ea, #7e22ce);
}

.sponsor-metro-content {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}

.sponsor-metro-logo {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}

.sponsor-metro-logo img {
  height: 65px;
  width: auto;
  object-fit: contain;
}

.sponsor-metro-tag {
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  padding: 4px 10px;
  font-size: 11px;
  color: #6b7280;
  font-weight: 500;
  letter-spacing: 0.5px;
  backdrop-filter: blur(4px);
  margin-left: -3px;
}

.sponsor-metro-text {
  flex: 1;
  min-width: 250px;
}

.sponsor-metro-title {
  font-size: 24px;
  font-weight: 700;
  color: #1e293b;
  margin: 0 0 8px 0;
  line-height: 1.2;
}

.sponsor-metro-description {
  font-size: 16px;
  color: #475569;
  margin: 0;
  line-height: 1.5;
}

.sponsor-metro-button {
  flex-shrink: 0;
  background: linear-gradient(135deg, #a855f7, #7e22ce);
  color: white;
  padding: 14px 28px;
  border-radius: 8px;
  font-weight: 600;
  font-size: 16px;
  border: none;
  box-shadow: 0 4px 12px rgba(168, 85, 247, 0.4);
  transition: all 0.3s ease;
  cursor: pointer;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.sponsor-metro-button::after {
  content: '➜';
  font-size: 18px;
  transition: transform 0.3s ease;
}

.sponsor-metro-link:hover .sponsor-metro-button {
  background: linear-gradient(135deg, #9333ea, #6b21a8);
  box-shadow: 0 6px 16px rgba(168, 85, 247, 0.5);
}

.sponsor-metro-link:hover .sponsor-metro-button::after {
  transform: translateX(4px);
}

/* Mobile responsive for Metro placement */
@media (max-width: 640px) {
  .sponsor-metro {
    padding: 20px;
  }
  
  .sponsor-metro-content {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  
  .sponsor-metro-logo {
    align-items: center;
  }
  
  .sponsor-metro-logo img {
    height: 45px;
  }
  
  .sponsor-metro-text {
    min-width: auto;
    text-align: center;
  }
  
  .sponsor-metro-title {
    font-size: 20px;
  }
  
  .sponsor-metro-description {
    font-size: 15px;
  }
  
  .sponsor-metro-button {
    width: 100%;
    justify-content: center;
    padding: 12px 24px;
    font-size: 15px;
  }
}

/* Mint Mobile Placement - Streamlined style */
.sponsor-mint-link {
  display: block;
  text-decoration: none;
  color: inherit;
  margin: 24px 0;
}

.sponsor-mint-link:hover {
  text-decoration: none;
  color: inherit;
}

.sponsor-mint {
  background: #ffffff;
  border: 2px solid #10b981;
  border-radius: 12px;
  padding: 24px;
  box-shadow: 0 4px 12px rgba(16, 185, 129, 0.15);
  position: relative;
  overflow: hidden;
  transition: all 0.3s ease;
}

.sponsor-mint-link:hover .sponsor-mint {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(16, 185, 129, 0.2);
  border-color: #059669;
}

.sponsor-mint::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, #10b981, #059669, #047857);
}

.sponsor-mint-content {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}

.sponsor-mint-logo {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}

.sponsor-mint-logo img {
  height: 65px;
  width: auto;
  object-fit: contain;
}

.sponsor-mint-tag {
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  padding: 4px 10px;
  font-size: 11px;
  color: #6b7280;
  font-weight: 500;
  letter-spacing: 0.5px;
  backdrop-filter: blur(4px);
  margin-left: -3px;
}

.sponsor-mint-text {
  flex: 1;
  min-width: 250px;
}

.sponsor-mint-title {
  font-size: 24px;
  font-weight: 700;
  color: #1e293b;
  margin: 0 0 8px 0;
  line-height: 1.2;
}

.sponsor-mint-description {
  font-size: 16px;
  color: #475569;
  margin: 0;
  line-height: 1.5;
}

.sponsor-mint-button {
  flex-shrink: 0;
  background: linear-gradient(135deg, #10b981, #059669);
  color: white;
  padding: 14px 28px;
  border-radius: 8px;
  font-weight: 600;
  font-size: 16px;
  border: none;
  box-shadow: 0 4px 12px rgba(16, 185, 129, 0.4);
  transition: all 0.3s ease;
  cursor: pointer;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.sponsor-mint-button::after {
  content: '➜';
  font-size: 18px;
  transition: transform 0.3s ease;
}

.sponsor-mint-link:hover .sponsor-mint-button {
  background: linear-gradient(135deg, #059669, #047857);
  box-shadow: 0 6px 16px rgba(16, 185, 129, 0.5);
}

.sponsor-mint-link:hover .sponsor-mint-button::after {
  transform: translateX(4px);
}

/* Mobile responsive for Mint placement */
@media (max-width: 640px) {
  .sponsor-mint {
    padding: 20px;
  }
  
  .sponsor-mint-content {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  
  .sponsor-mint-logo {
    align-items: center;
  }
  
  .sponsor-mint-logo img {
    height: 45px;
  }
  
  .sponsor-mint-text {
    min-width: auto;
    text-align: center;
  }
  
  .sponsor-mint-title {
    font-size: 20px;
  }
  
  .sponsor-mint-description {
    font-size: 15px;
  }
  
  .sponsor-mint-button {
    width: 100%;
    justify-content: center;
    padding: 12px 24px;
    font-size: 15px;
  }
}

/* Ultra Mobile Placement - Streamlined style */
.sponsor-ultra-link {
  display: block;
  text-decoration: none;
  color: inherit;
  margin: 24px 0;
}

.sponsor-ultra-link:hover {
  text-decoration: none;
  color: inherit;
}

.sponsor-ultra {
  background: #ffffff;
  border: 2px solid #8b5cf6;
  border-radius: 12px;
  padding: 24px;
  box-shadow: 0 4px 12px rgba(139, 92, 246, 0.15);
  position: relative;
  overflow: hidden;
  transition: all 0.3s ease;
}

.sponsor-ultra-link:hover .sponsor-ultra {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(139, 92, 246, 0.2);
  border-color: #7c3aed;
}

.sponsor-ultra::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, #8b5cf6, #7c3aed, #6d28d9);
}

.sponsor-ultra-content {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}

.sponsor-ultra-logo {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}

.sponsor-ultra-logo img {
  height: 65px;
  width: auto;
  object-fit: contain;
}

.sponsor-ultra-tag {
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  padding: 4px 10px;
  font-size: 11px;
  color: #6b7280;
  font-weight: 500;
  letter-spacing: 0.5px;
  backdrop-filter: blur(4px);
  margin-left: -3px;
}

.sponsor-ultra-text {
  flex: 1;
  min-width: 250px;
}

.sponsor-ultra-title {
  font-size: 24px;
  font-weight: 700;
  color: #1e293b;
  margin: 0 0 8px 0;
  line-height: 1.2;
}

.sponsor-ultra-description {
  font-size: 16px;
  color: #475569;
  margin: 0;
  line-height: 1.5;
}

.sponsor-ultra-button {
  flex-shrink: 0;
  background: linear-gradient(135deg, #8b5cf6, #7c3aed);
  color: white;
  padding: 14px 28px;
  border-radius: 8px;
  font-weight: 600;
  font-size: 16px;
  border: none;
  box-shadow: 0 4px 12px rgba(139, 92, 246, 0.4);
  transition: all 0.3s ease;
  cursor: pointer;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.sponsor-ultra-button::after {
  content: '→';
  font-size: 18px;
  transition: transform 0.3s ease;
}

.sponsor-ultra-link:hover .sponsor-ultra-button {
  background: linear-gradient(135deg, #7c3aed, #6d28d9);
  box-shadow: 0 6px 16px rgba(139, 92, 246, 0.5);
}

.sponsor-ultra-link:hover .sponsor-ultra-button::after {
  transform: translateX(4px);
}

/* Mobile responsive for Ultra Mobile placement */
@media (max-width: 640px) {
  .sponsor-ultra {
    padding: 20px;
  }
  
  .sponsor-ultra-content {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  
  .sponsor-ultra-logo {
    align-items: center;
  }
  
  .sponsor-ultra-logo img {
    height: 45px;
  }
  
  .sponsor-ultra-text {
    min-width: auto;
    text-align: center;
  }
  
  .sponsor-ultra-title {
    font-size: 20px;
  }
  
  .sponsor-ultra-description {
    font-size: 15px;
  }
  
  .sponsor-ultra-button {
    width: 100%;
    justify-content: center;
    padding: 12px 24px;
    font-size: 15px;
  }
}