/* Box */ .box { position: relative; margin-top: 9em; margin-bottom: 0; margin-left: auto; margin-right: 3em; &:after { content: ''; display: block; position: absolute; top: -9em; height: 9em; border-left: solid 1px _palette(accent); } &:before { content: ''; display: block; width: 90px; height: 66px; position: absolute; top: -4.5em; margin-left: -45px; margin-top: -33px; background: url('images/circles.svg') no-repeat; } :last-child { margin-bottom: 0; } &.right { &:before, &:after { left: 3em; } } &.left { &:before, &:after { right: 3em; } } &.style1 { background: _palette(bg); padding: 3em; .image { display: block; position: absolute; top: 0; width: 50%; height: 100%; background: _palette(bg); overflow: hidden; img { position: absolute; top: 0; height: 100%; width: auto; } } .inner { > :last-child { margin: 0; } } &.right { .image { left: 0; img { right: 0; } } .inner { margin-left: 50%; padding-left: 3em; } } &.left { .image { right: 0; img { left: 0; } } .inner { margin-right: 50%; padding-right: 3em; } } } &.style2 { text-align: center; header { display: inline-block; background: _palette(bg); padding: 2em 3em 2em 3em; margin: 0; p { padding: 0; } } .inner { position: relative; padding: 40px 0 0px 0; &:after { content: ''; display: block; position: absolute; top: 0; left: 50%; height: 100%; border-left: solid 1px _palette(border); } .row { position: relative; &:before { content: ''; display: block; position: absolute; top: 50%; left: 20px; width: calc(100% - 40px); border-bottom: solid 1px _palette(border); } } .image { position: relative; z-index: 1; padding: 20px; } } } &.style3 { background: _palette(bg); padding: 3em; header { text-align: center; } } &.style4 { background: _palette(bg); padding: 0; svg { position: absolute; z-index: 0; } h2 { position: relative; z-index: 10; } p { position: relative; z-index: 10; } .upper, .lower { display: block; position: relative; width: 100%; height: auto; overflow: hidden; padding: 0; margin: 0; } .upper { color: _palette(bg); background-color: _palette(accent); svg { bottom: 0; } } .lower{ color: _palette(accent); background-color: _palette(bg); svg { top: 0; } } &.right { svg { left: 0; } h2 { left: 0; margin-left: 2.4em; padding-left: 0.5em; border-left: solid 1px _palette(bg); } p { right: 0; margin-left: 12em; } } &.left { svg { right: 0; } h2 { right: 0; margin-right: 2.4em; padding-right: 0.5em; border-right: solid 1px _palette(bg); } p { left: 0; } } } }