:root{
    --place-gap: 20px;
    --place-card-w: clamp(260px, 32.5vw, 520px);
}

.place-wrap{
    font-family:'Nexa',Arial,sans-serif;
    max-width:1600px;
    width:90%;
    margin:75px auto;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:40px;
    padding: 90px 0;
}
.place-title{
    margin:0;
    color:#001D32;
    font-weight:800;
    font-size:clamp(28px,4vw,64px);
    line-height:1.0596;
    max-width:925px;
    text-align:left;
}

.place-row{
    display:flex;
    flex-wrap:nowrap;
    align-items:flex-start;
    gap: var(--place-gap);
    width:100%;
    justify-content:center;
    max-width: calc(var(--place-card-w)*3 + var(--place-gap)*2);
    margin-inline:auto;
}

.place-left{
    display:flex;
    flex-wrap:nowrap;
    gap:var(--place-gap);
    flex: 0 0 calc(var(--place-card-w)*2 + var(--place-gap));
    width: calc(var(--place-card-w)*2 + var(--place-gap));
    min-width: calc(var(--place-card-w)*2 + var(--place-gap));
    max-width: calc(var(--place-card-w)*2 + var(--place-gap));
}
.place-right{
    display:flex; flex-direction:column;
    gap:13px;
    flex: 0 0 var(--place-card-w);
    width: var(--place-card-w);
    min-width: var(--place-card-w);
    max-width: var(--place-card-w);
}
.place-left .place-card{
    flex: 0 0 var(--place-card-w);
    width: var(--place-card-w);
    max-width: var(--place-card-w);
}
.place-right .place-card{
    flex: 0 0 auto;
    width: var(--place-card-w);
    max-width: var(--place-card-w);
}

.place-card{
    background:#F5F5F5;
    border:1px solid rgba(0,0,0,.05);
    border-radius:40px;
    position:relative; overflow:hidden;
}
.place-card--big   {
    aspect-ratio:520/313;
}
.place-card--sm-183{
    aspect-ratio:520/183;
}
.place-card--sm-117{
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    justify-content: space-evenly;
    padding: 1%;
    aspect-ratio:520/117;
}

.place-card__in{
    position:absolute;
    inset:24px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
    text-align:center;
    gap:12px;
}
.place-card__in--row{
    flex-direction:row;
    align-items:start;
    gap:22px;
    text-align:left;
}

.place-ico{
    width: clamp(56px, 10vw, 110px);
    height: clamp(56px, 10vw, 110px);
    display: grid;
    place-items: center;
    overflow: hidden;
}
.place-ico > img{
    position: static;
    width: 86%;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    transform: none;
    left: auto; top: auto;
}

.place-card-title {
    font-weight:600;
    color:#000;
    text-transform:uppercase;
    font-size: clamp(24px, 1.8vw, 34px);
}
.place-card-text {
    font-weight:400;
    color:#000;
    font-size: clamp(14px, 1.4vw, 20px);
    line-height:1.3;
}
.place-card-text--w519{
    max-width:519px;
}
.place-card-text--w356{
    max-width:356px;
}
.place-card-text--w310{
    max-width:310px;
}
.place-mobile-text {
    display: none;
    color: black;
}

.opechatka {
    display: none;
}

@media (max-width: 900px){

    .place-row{
        flex-direction:column;
        gap:20px;
        max-width:none;
    }
    .place-left, .place-right{
        flex:none;
        width:100%;
        min-width:0;
        max-width:none;
        gap:20px;
    }

    .place-left{
        flex-direction:column;
    }

    .place-left .place-card, .place-right .place-card{
        flex:0 0 100%;
        width:100%;
        max-width:100%;
    }

    .place-wrap{
        width:100%;
        margin:60px auto 40px;
        padding:0 16px;
        gap:24px;
    }
    .place-title{
        max-width:328px;
        font-size:26px;
        line-height:1.0596;
    }
    .place-left, .place-right{ gap:20px; }

    .place-card{
        border-radius:18px;
    }
    .place-card__in {
        position:relative;
        inset:auto;
        padding:24px;
        gap:10px;
        align-items:flex-start;
        text-align:left;
    }
    .place-card--big, .place-card--sm-183 {
        aspect-ratio:auto;
    }
    
    .place-card--sm-117 {
        display: flex;
        align-items: center;
        flex-direction: row;
        gap:15px;
        padding-top: clamp(5px, 7px, 9px);
        padding-left: 4%;
    }
    
    .place-card--sm-117 {
        display: flex;
        align-items: center;
        flex-direction: row;
        justify-content: start;
        gap:15px;
        padding-top: clamp(5px, 7px, 9px);
        padding-left: 4%;
    }

    .place-card__in--row {
        flex-direction: column;
    }

    .place-ico > img{
        width: 100%;
        height: auto;
    }

    .place-card-title{
        font-size:26px;
        line-height:1.0596;
        font-weight:800;
        text-transform:uppercase;
    }
    .place-card-text{
        font-size: 20px;
        line-height:1.0596;
        font-weight:400;
    }

    .place-card--sm-117 .place-card-text{
        font-size:20px;
    }

    .place-mobile-text {
        display: block;
    }

    .normal {
        display: none;
    }
}