.announcements_section{background:var(--gray)}
.ann_title{margin:0 0 22px;color:var(--primary);font:700 28px/1 Inter,Arial,sans-serif;letter-spacing:.04em}

.ann_carousel{--ac-gap:22px;--ac-colw:545px;--ac-edge:0px}

.ac_viewport{overflow:hidden;position:relative;margin:0 auto;box-sizing:border-box;padding:0 var(--ac-edge)}
.ac_track{display:flex;gap:0;transition:transform .35s cubic-bezier(.22,.61,.36,1);will-change:transform;padding:4px 0;list-style:none}
.ac_page{display:grid;grid-auto-rows:auto;column-gap:var(--ac-gap);row-gap:var(--ac-gap)}
.ac_page .ac_slide{list-style:none;width:var(--ac-colw)}

.announce_card{display:flex;flex-direction:row;justify-content:space-between;align-items:stretch;width:100%;max-width:none;height:236px;padding:12px;border-radius:8px;background:var(--white);border:1px solid rgba(84,84,84,.2);transition:border-color .25s ease,box-shadow .25s ease,transform .18s ease;box-sizing:border-box;min-width:0}
.announce_card:hover{border-color:var(--primary);box-shadow:0 6px 20px rgba(76,120,232,.18);transform:translateY(-2px)}

.announce_info{display:flex;flex-direction:column;justify-content:space-between;gap:8px;flex:1 1 auto;padding-right:12px;min-width:0}
.announce_date{color:var(--secondary);font:600 14px/1.2 Inter,Arial,sans-serif}
.announce_name{color:#222;font:700 20px/1.25 Inter,Arial,sans-serif;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}
.announce_desc{color:var(--secondary);font:400 14px/1.35 Inter,Arial,sans-serif;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}

.announce_media{flex:0 0 200px;height:100%;min-width:0}
.announce_image{width:100%;height:100%;object-fit:cover;border-radius:6px;display:block}

.announce_btn{display:inline-flex;align-items:center;gap:10px;padding:10px 30px 10px 40px;border-radius:4px;border:1px solid var(--primary);background:var(--white);color:var(--primary);font:600 14px/1 Inter,Arial,sans-serif;text-decoration:none;transition:background .2s,color .2s,transform .18s;width:214px;height:44px}
.announce_btn_icon{width:16px;height:16px;display:block}
.announce_btn:hover{background:var(--primary);color:var(--white);transform:translateY(-1px)}
.announce_btn:hover .announce_btn_icon{content:url("../media/images/svg/arrow_right_white.svg")}

.ann_empty{color:var(--secondary);font:600 16px/1.2 Inter,Arial,sans-serif;padding:20px}

.ac_controls{display:none;align-items:center;justify-content:center;gap:18px;user-select:none}
.ac_arrow{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border-radius:50%;cursor:pointer;transition:background .2s ease,opacity .2s ease}
.ac_arrow img{width:24px;height:24px;display:block}
.ac_arrow:hover:not(:disabled){background:rgba(0,0,0,.06)}
.ac_arrow:disabled{opacity:.35;cursor:default;background:transparent}

.ac_dots{display:flex;align-items:center;gap:12px;max-width:min(100%,720px);overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:4px 6px;border-radius:999px}
.ac_dots::-webkit-scrollbar{display:none}
.ac_dot{width:10px;height:10px;border:0;cursor:pointer;background:center/10px 10px no-repeat url("../media/images/svg/round_no_active.svg")}
.ac_dot.is-active{background-image:url("../media/images/svg/round_primary_active.svg")}
.ac_dot:focus-visible{outline:2px solid rgba(76,120,232,.6);outline-offset:2px;border-radius:50%}

@media (max-width:800px){
  .announce_card{height:auto}
  .announce_media{width:100%;height:200px;margin-top:12px}
}
@media (max-width:540px){.announce_card{flex-direction:column-reverse}}
@media (max-width:580px){.announce_name{font-size:18px;line-height:1.25}}
@media (max-width:400px){.announce_name{font-size:16px;line-height:1.25}}

@media (prefers-reduced-motion:reduce){.announce_btn,.announce_card{transition:none!important}}
