.azimi-ribbon { width:100%; box-sizing:border-box; color:#0d285e; background:#f0f4ff; border-bottom:1px solid #dce6ff; font-family:inherit; }
.azimi-ribbon *, .azimi-ribbon *::before, .azimi-ribbon *::after { box-sizing:border-box; }
.azimi-ribbon__row { min-height:48px; display:flex; align-items:center; gap:12px; padding:7px clamp(16px,3.2vw,48px); }
.azimi-ribbon__dot { display:block; flex:none; width:7px; height:7px; border-radius:50%; background:#2e61e7; }
.azimi-ribbon__label { flex:none; color:#183d8f; font-size:13px; font-weight:600; }
.azimi-ribbon__slides { flex:1; min-width:0; }
.azimi-ribbon__slide[hidden], .azimi-ribbon__detail[hidden] { display:none; }
.azimi-ribbon__headline { display:flex; align-items:center; gap:10px; width:100%; padding:5px 0; border:0; background:transparent; color:inherit; font:inherit; font-size:14px; text-align:left; cursor:pointer; }
.azimi-ribbon__title { min-width:0; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.azimi-ribbon__read { flex:none; color:#2d5aca; font-size:12px; white-space:nowrap; }
.azimi-ribbon__headline:hover .azimi-ribbon__title, .azimi-ribbon__headline:focus-visible .azimi-ribbon__title { text-decoration:underline; }
.azimi-ribbon__headline:focus-visible, .azimi-ribbon__navigation button:focus-visible, .azimi-ribbon__detail a:focus-visible { outline:2px solid #2e61e7; outline-offset:3px; }
.azimi-ribbon__navigation { flex:none; display:flex; align-items:center; gap:5px; color:#4d6898; }
.azimi-ribbon__navigation button { width:28px; height:30px; padding:0; border:0; background:transparent; color:#2854ba; font:inherit; font-size:23px; line-height:1; cursor:pointer; }
.azimi-ribbon__navigation button:hover { color:#092661; }
.azimi-ribbon__count { min-width:35px; font-size:11px; text-align:center; white-space:nowrap; }
.azimi-ribbon__detail { padding:0 clamp(16px,3.2vw,48px) 15px; color:#294068; font-size:14px; line-height:1.45; }
.azimi-ribbon__detail p { margin:0 0 7px; }
.azimi-ribbon__detail a { color:#2d5aca; font-weight:600; text-decoration:none; }
.azimi-ribbon__detail a:hover { text-decoration:underline; }
.azimi-ribbon--preview { display:flex; align-items:center; gap:12px; min-height:48px; padding:7px clamp(16px,3.2vw,48px); font-size:14px; }
@media (max-width:600px) { .azimi-ribbon__row { gap:9px; min-height:52px; } .azimi-ribbon__label { font-size:12px; } .azimi-ribbon__headline { font-size:13px; } .azimi-ribbon__read { display:none; } .azimi-ribbon__navigation { gap:0; } .azimi-ribbon__navigation button { width:24px; } .azimi-ribbon__count { font-size:10px; } }
/* Elementor and Hello style all button elements. Keep the ribbon's own buttons quiet. */
.azimi-ribbon button.azimi-ribbon__headline { display:flex; align-items:center; gap:10px; width:100%; min-height:0; margin:0; padding:5px 0; border:0; border-radius:0; background:transparent; box-shadow:none; color:#0d285e; font:inherit; font-size:14px; line-height:1.4; text-align:left; white-space:normal; }
.azimi-ribbon button.azimi-ribbon__headline:hover, .azimi-ribbon button.azimi-ribbon__headline:focus { border:0; background:transparent; color:#0d285e; }
.azimi-ribbon .azimi-ribbon__navigation button { display:inline-flex; align-items:center; justify-content:center; width:28px; height:30px; min-height:0; margin:0; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; color:#2854ba; font:inherit; font-size:23px; line-height:1; }
.azimi-ribbon .azimi-ribbon__navigation button:hover, .azimi-ribbon .azimi-ribbon__navigation button:focus { border:0; background:transparent; color:#092661; }
@media (max-width:600px) { .azimi-ribbon button.azimi-ribbon__headline { font-size:13px; } .azimi-ribbon .azimi-ribbon__navigation button { width:24px; } }

/* The first Elementor container holds only this ribbon. Let its background meet
   the header and reach both viewport edges, while the content follows the site grid. */
body.home .elementor-element-10e143a { padding-inline:0 !important; }
body.home .elementor-element-10e143a > .e-con-inner { width:100%; max-width:100% !important; padding:0 !important; }
body.home .azimi-ribbon__row,
body.home .azimi-ribbon__detail {
  width:100%;
  max-width:1300px !important;
  margin-inline:auto;
  padding-inline:0;
}
body.home .azimi-ribbon__row { min-height:66px; padding-block:11px; }
body.home .azimi-ribbon__detail { padding-bottom:18px; }
@media (max-width:1340px) {
  body.home .azimi-ribbon__row,
  body.home .azimi-ribbon__detail { padding-inline:24px; }
}
@media (max-width:600px) {
  body.home .azimi-ribbon__row { min-height:64px; padding-block:10px; }
  body.home .azimi-ribbon__row,
  body.home .azimi-ribbon__detail { padding-inline:20px; }
}

/* On phones, keep the label above a readable two-line headline. */
@media (max-width:600px) {
  .azimi-ribbon__row {
    display:grid;
    grid-template-columns:7px minmax(0,1fr) auto;
    grid-template-rows:auto auto;
    column-gap:9px;
    row-gap:3px;
  }
  .azimi-ribbon__dot { grid-column:1; grid-row:1; align-self:center; }
  .azimi-ribbon__label { grid-column:2; grid-row:1; font-size:11px; line-height:1.2; }
  .azimi-ribbon__slides { grid-column:1 / 3; grid-row:2; width:100%; }
  .azimi-ribbon__navigation { grid-column:3; grid-row:1 / 3; align-self:center; }
  .azimi-ribbon__title {
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden;
    white-space:normal;
    line-height:1.4;
  }
  body.home .azimi-ribbon__row { min-height:88px; padding-block:12px; }
}
