#ec-advertising {
  --ad-bg: #08090f;
  --ad-panel: #10121b;
  --ad-panel-2: #151725;
  --ad-line: rgba(255, 255, 255, .11);
  --ad-text: #f6f5fb;
  --ad-muted: #b8b7c4;
  --ad-purple: #8b63ff;
  --ad-purple-2: #b36dff;
  --ad-cyan: #42d6e8;
  --ad-danger: #ff7b8d;
  --ad-success: #69e6ac;
  color: var(--ad-text);
  font-size: 16px;
  line-height: 1.65;
  max-width: 1280px;
  padding-bottom: 72px;
}

.ec-ad *, .ec-ad *::before, .ec-ad *::after { box-sizing: border-box; }
.ec-ad__breadcrumbs { margin: 18px 0 14px; }
.ec-ad__breadcrumbs .breadcrumb { background: transparent; margin: 0; padding: 0; }
.ec-ad__breadcrumbs .breadcrumb > li, .ec-ad__breadcrumbs .breadcrumb > li a { color: #9e9ca9; font-size: 13px; }
.ec-ad__breadcrumbs .breadcrumb > li:last-child { color: #d7d5df; }
.ec-ad__breadcrumbs .breadcrumb > li + li { margin-left: 8px; }
.ec-ad__breadcrumbs .breadcrumb > li + li::before { content: none !important; display: none !important; padding: 0 !important; }

.ec-ad__hero {
  background: linear-gradient(130deg, rgba(139, 99, 255, .16), rgba(9, 10, 16, .92) 47%), var(--ad-panel);
  border: 1px solid var(--ad-line);
  border-radius: 24px;
  display: grid;
  gap: 32px;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
  min-height: 480px;
  overflow: hidden;
  padding: clamp(34px, 6vw, 76px);
  position: relative;
}
.ec-ad__hero-glow { background: radial-gradient(circle, rgba(139, 99, 255, .28), transparent 67%); height: 380px; left: -150px; position: absolute; top: -170px; width: 520px; }
.ec-ad__hero-copy { align-self: center; max-width: 760px; position: relative; z-index: 2; }
.ec-ad__eyebrow { color: #b99cff; font-size: 13px; font-weight: 700; letter-spacing: .16em; margin: 0 0 16px; text-transform: uppercase; }
.ec-ad__hero h1 { color: var(--ad-text); font-family: "Montserrat-SemiBold", Montserrat, Arial, sans-serif; font-size: clamp(38px, 5.2vw, 68px); letter-spacing: -.035em; line-height: 1.04; margin: 0 0 24px; max-width: 760px; text-transform: none; }
.ec-ad__hero-text { color: #d1cfda; font-size: clamp(17px, 1.7vw, 21px); line-height: 1.65; margin: 0; max-width: 760px; }
.ec-ad__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.ec-ad__button { align-items: center; border: 1px solid transparent; border-radius: 9px; display: inline-flex; font-size: 14px; font-weight: 700; justify-content: center; letter-spacing: .025em; min-height: 48px; padding: 12px 21px; text-decoration: none; transition: border-color .2s ease, background .2s ease, box-shadow .2s ease, transform .2s ease; }
.ec-ad__button:hover, .ec-ad__button:focus { color: #fff; text-decoration: none; transform: translateY(-1px); }
.ec-ad__button:focus { outline: 3px solid rgba(66, 214, 232, .45); outline-offset: 3px; }
.ec-ad__button--primary { background: linear-gradient(135deg, #7652ff, #a452ff); box-shadow: 0 12px 32px rgba(118, 82, 255, .3); color: #fff; }
.ec-ad__button--primary:hover { box-shadow: 0 15px 38px rgba(118, 82, 255, .42); }
.ec-ad__button--secondary { background: rgba(255, 255, 255, .045); border-color: rgba(255, 255, 255, .16); color: #f6f5fb; }
.ec-ad__button--secondary:hover { background: rgba(255, 255, 255, .08); border-color: rgba(185, 156, 255, .55); }

.ec-ad__signal { align-self: center; aspect-ratio: 1; justify-self: center; max-width: 360px; position: relative; width: 100%; }
.ec-ad__signal::before { background-image: linear-gradient(rgba(139, 99, 255, .07) 1px, transparent 1px), linear-gradient(90deg, rgba(139, 99, 255, .07) 1px, transparent 1px); background-size: 28px 28px; border-radius: 50%; content: ""; inset: 0; mask-image: radial-gradient(circle, black 35%, transparent 73%); position: absolute; }
.ec-ad__signal-ring { border: 1px solid rgba(139, 99, 255, .35); border-radius: 50%; left: 50%; position: absolute; top: 50%; transform: translate(-50%, -50%); }
.ec-ad__signal-ring--one { height: 68%; width: 68%; }
.ec-ad__signal-ring--two { border-color: rgba(66, 214, 232, .25); height: 40%; width: 40%; }
.ec-ad__signal-core { background: radial-gradient(circle at 35% 30%, #d4b7ff, #8356ff 44%, #261b50 100%); border-radius: 50%; box-shadow: 0 0 52px rgba(139, 99, 255, .5); height: 78px; left: 50%; position: absolute; top: 50%; transform: translate(-50%, -50%); width: 78px; }
.ec-ad__signal-label { background: rgba(12, 13, 21, .9); border: 1px solid rgba(255, 255, 255, .14); border-radius: 999px; color: #e8e5ef; font-size: 11px; font-weight: 700; letter-spacing: .09em; padding: 8px 12px; position: absolute; }
.ec-ad__signal-label--display { left: 1%; top: 22%; }
.ec-ad__signal-label--sponsor { right: -4%; top: 42%; }
.ec-ad__signal-label--partner { bottom: 13%; left: 8%; }

.ec-ad__section { margin-top: clamp(58px, 8vw, 96px); }
.ec-ad__section-heading { align-items: flex-start; display: grid; gap: 18px; grid-template-columns: 42px minmax(0, 1fr); margin-bottom: 30px; }
.ec-ad__section-index { border-top: 1px solid var(--ad-purple); color: #9e7fff; font-size: 12px; font-weight: 700; padding-top: 8px; }
.ec-ad h2 { color: var(--ad-text); font-family: "Montserrat-SemiBold", Montserrat, Arial, sans-serif; font-size: clamp(27px, 3.3vw, 42px); letter-spacing: -.025em; line-height: 1.18; margin: 0; text-transform: none; }
.ec-ad h3 { color: var(--ad-text); font-family: "Montserrat-SemiBold", Montserrat, Arial, sans-serif; font-size: 20px; line-height: 1.3; margin: 0 0 13px; text-transform: none; }
.ec-ad p { font-size: 16px; }
.ec-ad__audience { display: grid; gap: 40px; grid-template-columns: minmax(260px, .9fr) minmax(0, 1.1fr); }
.ec-ad__audience .ec-ad__section-heading { margin: 0; }
.ec-ad__audience-copy { border-left: 1px solid var(--ad-line); padding-left: clamp(24px, 4vw, 52px); }
.ec-ad__audience-copy p { color: var(--ad-muted); font-size: 18px; margin: 0 0 18px; }
.ec-ad__audience-copy p:last-child { margin-bottom: 0; }

.ec-ad__format-grid { display: grid; gap: 18px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ec-ad__card { background: linear-gradient(150deg, rgba(255, 255, 255, .045), rgba(255, 255, 255, .018)); border: 1px solid var(--ad-line); border-radius: 16px; }
.ec-ad__format-card { min-height: 310px; padding: 28px; position: relative; }
.ec-ad__format-card::after { background: linear-gradient(90deg, var(--ad-purple), transparent); bottom: -1px; content: ""; height: 1px; left: 28px; position: absolute; right: 28px; }
.ec-ad__card-icon { align-items: center; background: rgba(139, 99, 255, .12); border: 1px solid rgba(139, 99, 255, .28); border-radius: 10px; color: #bfa7ff; display: inline-flex; font-size: 21px; height: 46px; justify-content: center; margin-bottom: 42px; width: 46px; }
.ec-ad__format-card p { color: var(--ad-muted); line-height: 1.7; margin: 0; }

.ec-ad__benefit-grid { border-bottom: 1px solid var(--ad-line); border-top: 1px solid var(--ad-line); display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ec-ad__benefit { min-height: 220px; padding: 26px 24px; }
.ec-ad__benefit + .ec-ad__benefit { border-left: 1px solid var(--ad-line); }
.ec-ad__benefit > span { color: #8f73dc; display: block; font-size: 12px; font-weight: 700; margin-bottom: 36px; }
.ec-ad__benefit h3 { font-size: 17px; }
.ec-ad__benefit p { color: var(--ad-muted); line-height: 1.55; margin: 0; }

.ec-ad__media-kit { align-items: center; background: linear-gradient(110deg, rgba(139, 99, 255, .22), rgba(66, 214, 232, .07)), var(--ad-panel); border: 1px solid rgba(139, 99, 255, .34); border-radius: 18px; display: flex; gap: 36px; justify-content: space-between; margin-top: clamp(58px, 8vw, 96px); overflow: hidden; padding: clamp(30px, 5vw, 52px); position: relative; }
.ec-ad__media-kit::before { background: radial-gradient(circle, rgba(179, 109, 255, .35), transparent 70%); content: ""; height: 270px; position: absolute; right: 60px; top: -170px; width: 370px; }
.ec-ad__media-kit > * { position: relative; z-index: 1; }
.ec-ad__media-kit > div { max-width: 760px; }
.ec-ad__media-kit h2 { font-size: clamp(27px, 3vw, 38px); }
.ec-ad__media-kit p:not(.ec-ad__eyebrow) { color: #cbc9d4; margin: 16px 0 0; }
.ec-ad__media-kit .ec-ad__button { flex: 0 0 auto; }

.ec-ad__form-section { display: grid; gap: clamp(32px, 5vw, 66px); grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr); margin-top: clamp(66px, 9vw, 112px); scroll-margin-top: 28px; }
.ec-ad__form-intro { padding-top: 24px; }
.ec-ad__form-intro > p:last-child { color: var(--ad-muted); font-size: 17px; line-height: 1.7; margin-top: 21px; }
.ec-ad__form { background: var(--ad-panel); border: 1px solid var(--ad-line); border-radius: 18px; padding: clamp(22px, 4vw, 42px); }
.ec-ad__form-grid { display: grid; gap: 5px 18px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ec-ad__field { min-width: 0; }
.ec-ad__field--full { grid-column: 1 / -1; }
.ec-ad__field label { color: #e6e4eb; display: flex; font-size: 14px; font-weight: 600; justify-content: space-between; margin: 0 0 8px; }
.ec-ad__field label span { color: #817f8e; font-size: 12px; font-weight: 500; }
#ec-advertising .ec-ad__form .ec-ad__field .form-control,
#ec-advertising .ec-ad__form .ec-ad__captcha .form-control { background: #080a12 !important; border: 1px solid #343647 !important; border-radius: 10px !important; box-shadow: none !important; color: #f3f2f7 !important; font-size: 16px; height: 48px; padding: 11px 13px !important; transition: border-color .2s, box-shadow .2s; }
#ec-advertising .ec-ad__form .ec-ad__field textarea.form-control { height: auto !important; min-height: 94px; resize: vertical; }
.ec-ad__field textarea[name="message"] { min-height: 164px; }
#ec-advertising .ec-ad__form .ec-ad__field .form-control:focus,
#ec-advertising .ec-ad__form .ec-ad__captcha .form-control:focus { border-color: var(--ad-purple) !important; box-shadow: 0 0 0 3px rgba(139, 99, 255, .18) !important; outline: none; }
.ec-ad__field .form-control[aria-invalid="true"] { border-color: var(--ad-danger); }
.ec-ad__field-error { color: var(--ad-danger); font-size: 13px !important; line-height: 1.35; margin: 6px 0 10px; min-height: 18px; }
.ec-ad__captcha { border-top: 1px solid var(--ad-line); margin-top: 6px; padding-top: 20px; }
.ec-ad__captcha fieldset { margin: 0; min-width: 0; padding: 0; }
.ec-ad__captcha legend { border: 0; color: #e6e4eb; font-size: 14px; font-weight: 600; margin: 0 0 10px; padding: 0; }
.ec-ad__captcha .form-group { margin: 0; }
.ec-ad__captcha .col-sm-6 { float: none; padding: 0; width: 100%; }
.ec-ad__captcha .captchalabel { color: var(--ad-muted); font-size: 13px; font-weight: 500; }
.ec-ad__captcha .input-group { align-items: stretch; display: flex; gap: 10px; max-width: 360px; width: 100%; }
#ec-advertising .ec-ad__captcha .input-group-addon { align-items: center; background: #080a12 !important; border: 1px solid #343647 !important; border-radius: 10px !important; box-sizing: border-box; display: flex; flex: 0 0 158px; height: 48px; justify-content: center; overflow: hidden; padding: 5px 3px !important; width: 158px; }
#ec-advertising .ec-ad__captcha .input-group .form-control { flex: 1 1 auto; min-width: 0; width: 1%; }
#ec-advertising .ec-ad__captcha img { border: 0 !important; border-radius: 6px !important; display: block; height: 35px; max-width: 150px; object-fit: cover; width: 150px; }
.ec-ad__privacy { color: #92909e; font-size: 13px !important; line-height: 1.55; margin: 18px 0 0; }
.ec-ad__privacy a { color: #bda5ff; text-decoration: underline; }
.ec-ad__status { border-radius: 8px; font-size: 14px; line-height: 1.5; margin-top: 16px; min-height: 0; }
.ec-ad__status:not(:empty) { border: 1px solid var(--ad-line); padding: 12px 14px; }
.ec-ad__status.is-success { background: rgba(105, 230, 172, .08); border-color: rgba(105, 230, 172, .35); color: var(--ad-success); }
.ec-ad__status.is-error { background: rgba(255, 123, 141, .08); border-color: rgba(255, 123, 141, .35); color: #ff9aa8; }
.ec-ad__submit { border: 0; cursor: pointer; margin-top: 18px; min-width: 170px; }
.ec-ad__submit[disabled] { cursor: wait; opacity: .72; transform: none; }
.ec-ad__honeypot { left: -10000px; position: absolute !important; top: auto; width: 1px; height: 1px; overflow: hidden; }

@media (max-width: 1050px) {
  .ec-ad__hero { grid-template-columns: minmax(0, 1fr) 260px; }
  .ec-ad__format-card { min-height: 340px; }
  .ec-ad__benefit-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ec-ad__benefit:nth-child(3) { border-left: 0; border-top: 1px solid var(--ad-line); }
  .ec-ad__benefit:nth-child(4) { border-top: 1px solid var(--ad-line); }
}

@media (max-width: 820px) {
  #ec-advertising { padding-left: 18px; padding-right: 18px; }
  .ec-ad__hero { grid-template-columns: 1fr; min-height: 0; padding-bottom: 48px; }
  .ec-ad__signal { display: none; }
  .ec-ad__audience, .ec-ad__form-section { grid-template-columns: 1fr; }
  .ec-ad__audience-copy { border-left: 0; border-top: 1px solid var(--ad-line); padding-left: 0; padding-top: 28px; }
  .ec-ad__format-grid { grid-template-columns: 1fr; }
  .ec-ad__format-card { min-height: 0; }
  .ec-ad__card-icon { margin-bottom: 26px; }
  .ec-ad__media-kit { align-items: flex-start; flex-direction: column; }
  .ec-ad__form-intro { padding-top: 0; }
}

@media (max-width: 560px) {
  #ec-advertising { padding-bottom: 48px; }
  .ec-ad__hero { border-radius: 16px; padding: 30px 22px 34px; }
  .ec-ad__hero h1 { font-size: clamp(35px, 11vw, 48px); }
  .ec-ad__actions, .ec-ad__actions .ec-ad__button, .ec-ad__media-kit .ec-ad__button { width: 100%; }
  .ec-ad__section-heading { gap: 12px; grid-template-columns: 34px minmax(0, 1fr); }
  .ec-ad__benefit-grid { grid-template-columns: 1fr; }
  .ec-ad__benefit + .ec-ad__benefit { border-left: 0; border-top: 1px solid var(--ad-line); }
  .ec-ad__benefit { min-height: 0; }
  .ec-ad__media-kit { border-radius: 14px; padding: 28px 22px; }
  .ec-ad__form { border-radius: 14px; padding: 22px 16px; }
  .ec-ad__form-grid { grid-template-columns: 1fr; }
  .ec-ad__field--full { grid-column: auto; }
  .ec-ad__submit { width: 100%; }
  .ec-ad__captcha .input-group { max-width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .ec-ad__button { transition: none; }
}
