Компенсировать адаптивные отступы родителя, дочерним блокам

* {
    position: relative;
    padding: 0;
    margin: 0;
    outline: none;
    letter-spacing: 1px;
    box-sizing: border-box;
}

.m_bl {
    --padding:clamp(10px, 2%, 20px);
    --paddingm:clamp(-10px, -2%, -20px);
    display: grid;
    grid-template-columns: 1fr max(200px, 30%);
    grid-template-rows: min-content 1fr;
    align-items: start;
    grid-template-areas: 'pl rk' 'cn rk';
    padding:var(--padding);
    gap:var(--padding);

 }
 .open .m_bl {
    grid-template-areas: 'pl pl' 'cn rk';
 }
 
 .open .pl {
    margin-left: var(--paddingm);
    margin-top: var(--paddingm);
    margin-right: var(--paddingm);
 }

 .pl {
    height: 200px;
    background: gold;
    grid-area: pl;
 }
 .content {
    height: 100px;
    background: red;
    grid-area: cn;
 }
 .rk {
    height: 800px;
    background: green;
     grid-area: rk;
 }
<body class='open'>
    <div class='m_bl'>
        <div class='pl'></div>
        <div class='content'></div>
        <div class='rk'></div>
    </div>
</body>

Выставлены

--padding:clamp(10px, 2%, 20px);
--paddingm:clamp(-10px, -2%, -20px);

Добавляю класс 'open', меняю расположение блоков. Необходимо сдвинуть верхний блок на столько, чтобы закрыть им отступы. По левому, правому и верхнему краю

     .open .pl {
    margin-left: var(--paddingm);
    margin-top: var(--paddingm);
    margin-right: var(--paddingm);
 }

Что та не выходит. То есть отступы оставить, только верхний блок закрыть ими... Данные отступы, динамичны, не статичны.


Ответы (0 шт):