.twcu-section{
    position: relative;
    background: url('assets/images/choose-bg.png') repeat;
    background-size: cover;
    padding: 50px 0 80px;
    overflow: hidden;
}
.twcu-section *{
    animation: none !important;
    box-shadow: none !important;
}
.twcu-section .container{
    max-width: 1700px;
    margin: 0 auto;
    padding: 0 40px;
}
.twcu-title{
    text-align: center;
    margin-bottom: 70px;
}
.twcu-title .twcu-tag{
    display: inline-flex;
    align-items: center;
    gap: 15px;
    color: #ff5722;
    font-weight: 700;
    letter-spacing: 2px;
    font-size: 15px;
    margin-bottom: 15px;
}
.twcu-title .twcu-tag::before,
.twcu-title .twcu-tag::after{
    content: '';
    width: 40px;
    height: 2px;
    background: #ff5722;
}
.twcu-title h2{
    font-size: 46px;
    font-weight: 800;
    color: #0b1f3a;
    max-width: 850px;
    margin: 0 auto;
    line-height: 1.3;
}

.twcu-grid{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
}
.twcu-col{
    flex: 0 0 30%;
    display: flex;
    flex-direction: column;
    gap: 55px;
}
.twcu-center{
    flex: 0 0 40%;
    text-align: center;
    position: relative;
    z-index: 3;
}
.twcu-center img{
    max-width: 100%;
    height: auto;
}

.twcu-row{
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
}
.twcu-col.right .twcu-row{
    flex-direction: row-reverse;
}

/* LINE */
.twcu-linewrap{
    flex: 1;
    height: 2px;
    background: #ff5722 !important;
    position: relative;
    min-width: 40px;
}
.twcu-linewrap .twcu-dot{
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 24px !important;
    height: 24px !important;
    border-radius: 50% !important;
    background: rgba(255,87,34,.18) !important;
}
.twcu-linewrap .twcu-dot::before{
    content: '';
    position: absolute;
    inset: 0;
    margin: auto;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    background: #ff5722;
}
.twcu-linewrap .twcu-dot::after{
    content: '+';
    position: absolute;
    inset: 0;
    margin: auto;
    width: 13px;
    height: 13px;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    line-height: 13px;
    text-align: center;
}

/* BOX - solid grey with CSS notch, no external PNG dependency */
.twcu-box{
    position: relative !important;
    flex: 0 0 auto;
    width: 100%;
    max-width: 400px;
    min-height: 110px;
    display: flex !important;
    align-items: center;
    gap: 18px;
    background: #eef1f4 !important;
    padding: 22px 26px 22px 34px;
    clip-path: polygon(30px 0, 100% 0, 100% 100%, 0 100%, 0 30px);
}
.twcu-col.right .twcu-box{
    flex-direction: row-reverse;
    text-align: right;
    padding: 22px 34px 22px 26px;
    clip-path: polygon(0 0, calc(100% - 30px) 0, 100% 30px, 100% 100%, 0 100%);
}

.twcu-icon{
    flex-shrink: 0 !important;
    width: 56px !important;
    height: 56px !important;
    border-radius: 8px !important;
    background: #ff5722 !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
}
.twcu-icon svg{
    width: 27px;
    height: 27px;
    fill: none;
    stroke: #fff;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.twcu-box h4{
    font-size: 18px;
    font-weight: 700;
    color: #0b1f3a !important;
    margin: 0 !important;
    line-height: 1.3;
}

@media (max-width: 1150px){
    .twcu-grid{ flex-wrap: wrap; justify-content: center; }
    .twcu-col{ flex: 0 0 100%; order: 2; gap: 25px; }
    .twcu-center{ flex: 0 0 100%; order: 1; margin-bottom: 40px; max-width: 500px; margin-left:auto; margin-right:auto; }
    .twcu-linewrap{ display: none; }
    .twcu-box{
        max-width: 100%;
        padding: 22px 22px 22px 34px !important;
        justify-content: flex-start !important;
        flex-direction: row !important;
        text-align: left !important;
    }
}
@media (max-width: 576px){
    .twcu-title h2{ font-size: 30px; }
    .twcu-section{ padding: 60px 0; }
}